e7738de6d2
CI / Deep Native Runtime Cases (1/6) (push) Has been skipped
CI / Native Preflight (push) Failing after 1s
CI / Native Runtime Cases (1/2) (push) Failing after 0s
CI / Native Runtime Cases (2/2) (push) Failing after 1s
CI / Native Metadata Reports (push) Failing after 0s
CI / Native Direct Backend Artifacts (push) Failing after 0s
CI / Native Sanitizer Smoke (push) Failing after 1s
CI / Command Contract Snapshots (push) Failing after 1s
CI / Deep Conformance Suite (push) Has been skipped
CI / Graph Build Perf (push) Failing after 1s
CI / Deep Native Preflight (push) Has been skipped
CI / Deep Native Runtime Cases (2/6) (push) Has been skipped
CI / Deep Native Runtime Cases (3/6) (push) Has been skipped
CI / Conformance Suite (push) Failing after 1s
CI / Workspace Checks (push) Failing after 0s
CI / Deep Native Runtime Cases (5/6) (push) Has been skipped
CI / Deep Native Runtime Cases (6/6) (push) Has been skipped
CI / Deep Native Runtime Cases (4/6) (push) Has been skipped
CI / Deep Graph Build Perf (push) Has been skipped
313 lines
7.4 KiB
CSS
313 lines
7.4 KiB
CSS
@import "tailwindcss";
|
|
@plugin "@tailwindcss/typography";
|
|
@plugin "tailwindcss-animate";
|
|
|
|
@custom-variant dark (&:is(.dark *, .dark));
|
|
|
|
@theme {
|
|
--color-bg: #ffffff;
|
|
--color-fg: #171717;
|
|
--color-muted: #666666;
|
|
--color-border: #eaeaea;
|
|
--color-surface: #ffffff;
|
|
--color-surface-muted: #fafafa;
|
|
--color-accent: #000000;
|
|
--color-accent-fg: #ffffff;
|
|
--color-blue: #0070f3;
|
|
--color-blue-hover: #0060df;
|
|
--color-success: #0070f3;
|
|
--color-danger: #ee0000;
|
|
--color-danger-bg: #fff0f0;
|
|
--color-code-bg: #f5f5f5;
|
|
--color-code-fg: #171717;
|
|
|
|
--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
|
|
--font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
|
|
|
|
--container-content: 72rem;
|
|
|
|
--shadow-card: 0 4px 14px 0 rgb(0 0 0 / 0.1);
|
|
--shadow-soft: 0 2px 8px rgb(0 0 0 / 0.08);
|
|
}
|
|
|
|
.dark {
|
|
--color-bg: #000000;
|
|
--color-fg: #ededed;
|
|
--color-muted: #888888;
|
|
--color-border: #333333;
|
|
--color-surface: #111111;
|
|
--color-surface-muted: #0a0a0a;
|
|
--color-accent: #ffffff;
|
|
--color-accent-fg: #000000;
|
|
--color-blue: #3291ff;
|
|
--color-blue-hover: #52a9ff;
|
|
--color-danger: #ff4444;
|
|
--color-danger-bg: #2a0000;
|
|
--color-code-bg: #111111;
|
|
--color-code-fg: #ededed;
|
|
--shadow-card: 0 4px 14px 0 rgb(0 0 0 / 0.25);
|
|
--shadow-soft: 0 2px 8px rgb(0 0 0 / 0.2);
|
|
}
|
|
|
|
:root {
|
|
color-scheme: light;
|
|
}
|
|
|
|
.dark {
|
|
color-scheme: dark;
|
|
}
|
|
|
|
html {
|
|
background: var(--color-bg);
|
|
color: var(--color-fg);
|
|
font-family: var(--font-sans);
|
|
-webkit-font-smoothing: antialiased;
|
|
-moz-osx-font-smoothing: grayscale;
|
|
text-rendering: optimizeLegibility;
|
|
}
|
|
|
|
body {
|
|
margin: 0;
|
|
min-height: 100vh;
|
|
}
|
|
|
|
::selection {
|
|
background: color-mix(in srgb, var(--color-blue) 25%, transparent);
|
|
}
|
|
|
|
/* ─── Shiki (rehype-pretty-code) ───────────────────── */
|
|
|
|
[data-rehype-pretty-code-figure] {
|
|
margin: 1.5rem 0;
|
|
}
|
|
|
|
[data-rehype-pretty-code-figure] pre {
|
|
overflow-x: auto;
|
|
padding: 1rem;
|
|
border: 1px solid var(--color-border);
|
|
border-radius: 0.5rem;
|
|
background: var(--color-code-bg);
|
|
font-size: 0.8125rem;
|
|
line-height: 1.6;
|
|
}
|
|
|
|
[data-rehype-pretty-code-figure] pre > code {
|
|
display: grid;
|
|
background: transparent;
|
|
padding: 0;
|
|
border: 0;
|
|
font-size: inherit;
|
|
color: inherit;
|
|
}
|
|
|
|
[data-rehype-pretty-code-figure] pre > code [data-line] {
|
|
padding: 0 0.25rem;
|
|
}
|
|
|
|
[data-rehype-pretty-code-title] {
|
|
padding: 0.5rem 1rem;
|
|
font-size: 0.75rem;
|
|
font-family: var(--font-mono);
|
|
color: var(--color-muted);
|
|
background: var(--color-surface);
|
|
border: 1px solid var(--color-border);
|
|
border-bottom: 0;
|
|
border-radius: 0.5rem 0.5rem 0 0;
|
|
}
|
|
|
|
[data-rehype-pretty-code-title] + pre {
|
|
border-top-left-radius: 0;
|
|
border-top-right-radius: 0;
|
|
}
|
|
|
|
.prose :where(h1, h2, h3, h4, h5, h6) a,
|
|
.prose :where(h1, h2, h3, h4, h5, h6) a:hover {
|
|
color: inherit;
|
|
font-weight: inherit;
|
|
text-decoration: none;
|
|
}
|
|
|
|
[data-rehype-pretty-code-figure] [data-theme] code {
|
|
color: inherit;
|
|
background-color: transparent;
|
|
}
|
|
|
|
[data-rehype-pretty-code-figure] span {
|
|
color: var(--shiki-light);
|
|
}
|
|
|
|
.dark [data-rehype-pretty-code-figure] span {
|
|
color: var(--shiki-dark);
|
|
}
|
|
|
|
/* ─── Inline syntax highlight (home page) ──────────── */
|
|
|
|
.hl-comment { color: #6b7280; font-style: italic; }
|
|
.hl-string { color: #067a6e; }
|
|
.hl-keyword { color: #d6409f; }
|
|
.hl-type { color: #0070c0; }
|
|
.hl-function { color: #6f42c1; }
|
|
.hl-number { color: #0070c0; }
|
|
.hl-variable { color: var(--color-fg); }
|
|
.hl-id { color: #6f42c1; }
|
|
.hl-key { color: #d6409f; }
|
|
.hl-boolean { color: #0070c0; }
|
|
.hl-punctuation { color: var(--color-fg); }
|
|
.hl-operator { color: #d6409f; }
|
|
|
|
.dark .hl-comment { color: #a1a1a1; }
|
|
.dark .hl-string { color: #00ca50; }
|
|
.dark .hl-keyword { color: #ff4d8d; }
|
|
.dark .hl-type { color: #c472fb; }
|
|
.dark .hl-function { color: #c472fb; }
|
|
.dark .hl-number { color: #47a8ff; }
|
|
.dark .hl-variable { color: #47a8ff; }
|
|
.dark .hl-id { color: #c472fb; }
|
|
.dark .hl-key { color: #ff4d8d; }
|
|
.dark .hl-boolean { color: #47a8ff; }
|
|
.dark .hl-punctuation { color: #ededed; }
|
|
.dark .hl-operator { color: #ff4d8d; }
|
|
|
|
.hl-bash-function {
|
|
color: var(--color-fg);
|
|
font-weight: 600;
|
|
}
|
|
.hl-bash-key { color: #0070f3; }
|
|
.hl-bash-string { color: #067a6e; }
|
|
.hl-bash-keyword { color: #d6409f; }
|
|
.hl-bash-variable { color: #6f42c1; }
|
|
.hl-bash-operator,
|
|
.hl-bash-punctuation {
|
|
color: var(--color-muted);
|
|
}
|
|
.hl-bash-number { color: var(--color-fg); }
|
|
|
|
.dark .hl-bash-function { color: #ffffff; }
|
|
.dark .hl-bash-key { color: #52a9ff; }
|
|
.dark .hl-bash-string { color: #00ca50; }
|
|
.dark .hl-bash-keyword { color: #ff4d8d; }
|
|
.dark .hl-bash-variable { color: #c472fb; }
|
|
.dark .hl-bash-operator,
|
|
.dark .hl-bash-punctuation {
|
|
color: #888888;
|
|
}
|
|
.dark .hl-bash-number { color: #ffffff; }
|
|
|
|
/* ─── Home chat motion ────────────────────────────── */
|
|
|
|
@keyframes home-chat-reveal {
|
|
from {
|
|
opacity: 0;
|
|
transform: translateY(0.875rem) scale(0.985);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: translateY(0) scale(1);
|
|
}
|
|
}
|
|
|
|
@keyframes home-command-sheen {
|
|
0% {
|
|
opacity: 0;
|
|
transform: translateX(-120%);
|
|
}
|
|
28% {
|
|
opacity: 0.18;
|
|
}
|
|
100% {
|
|
opacity: 0;
|
|
transform: translateX(120%);
|
|
}
|
|
}
|
|
|
|
.home-chat-shell {
|
|
transform-origin: center top;
|
|
}
|
|
|
|
.home-chat-code {
|
|
background: color-mix(in srgb, var(--color-fg) 9%, var(--color-bg));
|
|
border: 1px solid color-mix(in srgb, var(--color-fg) 14%, transparent);
|
|
border-radius: 0.375rem;
|
|
color: var(--color-fg);
|
|
font-family: var(--font-mono);
|
|
font-size: 0.78125rem;
|
|
padding: 0.125rem 0.45rem;
|
|
}
|
|
|
|
.home-chat-reveal,
|
|
.home-tool-row {
|
|
opacity: 0;
|
|
transform: translateY(0.875rem) scale(0.985);
|
|
will-change: opacity, transform;
|
|
}
|
|
|
|
.home-chat-viewport[data-chat-visible="true"] .home-chat-reveal,
|
|
.home-chat-viewport[data-chat-visible="true"] .home-tool-row {
|
|
animation: home-chat-reveal 620ms cubic-bezier(0.16, 1, 0.3, 1) forwards;
|
|
animation-delay: var(--chat-delay, 0ms);
|
|
}
|
|
|
|
.home-tool-row {
|
|
position: relative;
|
|
}
|
|
|
|
.home-tool-row::after {
|
|
opacity: 0;
|
|
}
|
|
|
|
.home-chat-viewport[data-chat-visible="true"] .home-tool-row::after {
|
|
animation: home-command-sheen 1150ms ease-out forwards;
|
|
animation-delay: calc(var(--chat-delay, 0ms) + 140ms);
|
|
background: linear-gradient(
|
|
90deg,
|
|
transparent,
|
|
color-mix(in srgb, var(--color-fg) 18%, transparent),
|
|
transparent
|
|
);
|
|
content: "";
|
|
inset: 0;
|
|
pointer-events: none;
|
|
position: absolute;
|
|
transform: translateX(-120%);
|
|
}
|
|
|
|
@media (prefers-reduced-motion: reduce) {
|
|
.home-chat-reveal,
|
|
.home-tool-row {
|
|
animation: none;
|
|
opacity: 1;
|
|
transform: none;
|
|
}
|
|
|
|
.home-tool-row::after {
|
|
animation: none;
|
|
content: none;
|
|
}
|
|
}
|
|
|
|
/* ─── Prose adjustments ────────────────────────────── */
|
|
|
|
.prose pre {
|
|
background: var(--color-code-bg) !important;
|
|
color: var(--color-code-fg) !important;
|
|
}
|
|
|
|
.prose :where(code):not(:where([class~="not-prose"] *)) {
|
|
background: var(--color-surface-muted);
|
|
border: 1px solid var(--color-border);
|
|
border-radius: 0.25rem;
|
|
padding: 0.15rem 0.4rem;
|
|
font-weight: 400;
|
|
}
|
|
|
|
.prose :where(code):not(:where([class~="not-prose"] *))::before,
|
|
.prose :where(code):not(:where([class~="not-prose"] *))::after {
|
|
content: none;
|
|
}
|
|
|
|
.prose :where(pre code):not(:where([class~="not-prose"] *)) {
|
|
background: transparent;
|
|
border: 0;
|
|
padding: 0;
|
|
}
|