/* HyperFrames Design System — Mintlify Theme Overrides */ @import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&display=swap"); @font-face { font-family: "TT Norms Pro"; src: url("https://www-static-assets.heygen.com/fonts/tt-norms/TT_Norms_Pro_Light.woff2") format("woff2"); font-weight: 300; font-style: normal; font-display: swap; } @font-face { font-family: "TT Norms Pro"; src: url("https://www-static-assets.heygen.com/fonts/tt-norms/TT_Norms_Pro_Normal.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; } @font-face { font-family: "TT Norms Pro"; src: url("https://www-static-assets.heygen.com/fonts/tt-norms/TT_Norms_Pro_Medium.woff2") format("woff2"); font-weight: 500; font-style: normal; font-display: swap; } @font-face { font-family: "TT Norms Pro"; src: url("https://www-static-assets.heygen.com/fonts/tt-norms/TT_Norms_Pro_DemiBold.woff2") format("woff2"); font-weight: 600; font-style: normal; font-display: swap; } @font-face { font-family: "TT Norms Pro"; src: url("https://www-static-assets.heygen.com/fonts/tt-norms/TT_Norms_Pro_Bold.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; } /* ── Light mode (default) ── */ /* * NOTE: All custom variables are namespaced with `--hf-` to avoid * colliding with Mintlify's Tailwind color system, which owns names * like `--background-light` / `--background-dark` and uses them via * `rgb(var(--background-light)/)`. Overriding those with hex * values breaks the rgb() call and makes surfaces transparent (e.g. * the "Copy page" dropdown panel in light mode). */ /* Light mode is hyperframes.dev's Studio ground: ink #131109 at hyperframes.dev's own * opacities over the beige light (studioRedesign.css `--sr-*` in hyperframes-internal). */ :root { --hf-background: #cfc7b4; --hf-background-light: rgb(255 250 242 / 0.72); --hf-surface2: rgb(255 250 242 / 0.5); --hf-border-color: rgb(19 17 9 / 0.14); --hf-border-color-light: rgb(19 17 9 / 0.2); --hf-text: rgb(19 17 9 / 0.86); --hf-text-secondary: rgb(19 17 9 / 0.68); --hf-text-tertiary: rgb(19 17 9 / 0.66); --hf-heading: #131109; --hf-code-bg: rgb(255 250 242 / 0.72); --hf-ui-border: rgb(19 17 9 / 0.12); --hf-sidebar-rail: rgb(19 17 9 / 0.14); --hf-sidebar-text: rgb(19 17 9 / 0.68); --hf-floating-input-shadow: 0 8px 28px rgba(19, 17, 9, 0.12), 0 1px 4px rgba(19, 17, 9, 0.1); --mintlify-slot-header-height: 3rem; /* The mint accent is for dark grounds; on the beige it takes hyperframes.dev's deep green. */ --hf-brand: #05563f; --hf-brand-soft: rgba(5, 86, 63, 0.1); --hf-video-accent: #3ce6ac; --hf-glass: rgb(247 236 211 / 0.65); --hf-chip: rgb(255 255 255 / 0.45); --hf-accent-green: #1a7a0a; --hf-accent-green-light: rgba(26, 122, 10, 0.07); --hf-accent-green-border: rgba(26, 122, 10, 0.25); --hf-accent-blue: #2563eb; --hf-accent-blue-light: rgba(37, 99, 235, 0.06); --hf-accent-blue-border: rgba(37, 99, 235, 0.2); --hf-accent-purple: #7c3aed; --hf-accent-purple-light: rgba(124, 58, 237, 0.06); --hf-accent-purple-border: rgba(124, 58, 237, 0.2); --hf-selection-bg: rgba(128, 128, 128, 0.2); } /* ── Dark mode ── */ /* Dark mode is the Studio app's Night palette (packages/desktop/src/index.css, * :root[data-chrome="night"]): warm paper, cards and ink on hue 70. */ .dark, [data-theme="dark"] { --hf-background: #201e1c; --hf-background-light: #272522; --hf-surface2: #2f2c29; --hf-border-color: rgb(245 243 241 / 0.1); --hf-border-color-light: rgb(245 243 241 / 0.16); --hf-text: #e2e0de; --hf-text-secondary: #b8b6b4; --hf-text-tertiary: #979593; --hf-heading: #f5f3f1; --hf-code-bg: #24211e; --hf-ui-border: rgb(245 243 241 / 0.075); --hf-sidebar-rail: rgb(245 243 241 / 0.1); --hf-sidebar-text: #b8b6b4; --hf-floating-input-shadow: 0 8px 28px rgba(0, 0, 0, 0.4), 0 1px 4px rgba(0, 0, 0, 0.4); --hf-brand: #3ce6ac; --hf-brand-soft: rgba(60, 230, 172, 0.12); --hf-glass: rgb(32 30 28 / 0.72); --hf-chip: rgb(255 255 255 / 0.08); --hf-accent-green: #22c55e; --hf-accent-green-light: rgba(34, 197, 94, 0.1); --hf-accent-green-border: rgba(34, 197, 94, 0.3); --hf-accent-blue: #3b82f6; --hf-accent-blue-light: rgba(59, 130, 246, 0.1); --hf-accent-blue-border: rgba(59, 130, 246, 0.3); --hf-accent-purple: #a78bfa; --hf-accent-purple-light: rgba(167, 139, 250, 0.1); --hf-accent-purple-border: rgba(167, 139, 250, 0.3); --hf-selection-bg: rgba(255, 255, 255, 0.15); } /* ── Typography ── */ body { font-family: "TT Norms Pro", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; } h1, h2, h3, h4, h5, h6 { font-family: "TT Norms Pro", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; } h1, h2 { letter-spacing: -0.02em; } h3 { letter-spacing: -0.01em; } /* ── Workflow routing ── */ .hf-workflow-routes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.75rem 1.25rem; margin: 1.5rem 0; } .hf-workflow-route { display: flex; flex-direction: column; gap: 0.6rem; color: inherit; text-decoration: none; border-bottom: 0 !important; box-shadow: none !important; } .hf-workflow-route:hover .hf-workflow-route-title { color: var(--hf-accent-green); } .hf-workflow-route video { display: block; width: 100%; aspect-ratio: 16 / 9; margin: 0; border-radius: 0.5rem; background: #000; object-fit: cover; pointer-events: none; } /* A route with no preview clip: same box, no black rectangle. */ .hf-workflow-route-noclip { display: block; width: 100%; aspect-ratio: 16 / 9; margin: 0; border-radius: 0.5rem; background: color-mix(in srgb, currentColor 8%, transparent); } .hf-workflow-route-title { display: block; color: var(--hf-heading); font-weight: 650; line-height: 1.35; transition: color 120ms ease; } .hf-workflow-route-copy { display: block; margin-top: 0.3rem; color: var(--hf-text-secondary); font-size: 0.9rem; line-height: 1.5; } @media (max-width: 639px) { .hf-workflow-routes { grid-template-columns: 1fr; } } /* Code font — IBM Plex Mono (loaded via Google Fonts above). * * Deliberately scoped to real code elements. The previous rule also matched * [class*="code"] / [class*="Code"], which caught any element whose class * merely contained that substring — including every Accordion, whose wrapper * carries the Tailwind utility `dark:bg-codeblock`. That set the whole * accordion (and, by inheritance, its title and prose) in monospace, so plain * sentences rendered like terminal output. Syntax tokens inside `pre` inherit * from `pre`, so they do not need a selector of their own. */ code, pre, pre code, kbd, samp { font-family: "IBM Plex Mono", "SF Mono", "Fira Code", monospace; } /* ── Code block copy button ── */ /* * One button, every code block on the site, and all of it is Tailwind * utilities on the element itself. The shipped bundle has no `--copy-*` * custom property, no documented class and no docs.json key for it (its only * button tokens, `--button-*`, belong to the