mirror of
https://github.com/zenlm/docs.git
synced 2026-10-30 15:00:08 +00:00
- content/docs/models/{chat,coder,vision,omni,embeddings,rerankers,safety,
image,video,audio,3d,agents,world,specialty}.mdx — one page per family with
accurate spec tables (params/context) and weights + paper links for every
one of the 95 Zen models (generated from the verified catalog, link-checked).
- meta.json orders the families; drop redundant single-model pages.
- Buildability fixes: next 16, @hanzo/docs-base-ui dep, collections/server
import via .docs outDir, toSource(), pnpm overrides; monochrome ensō theme.
Co-authored-by: Hanzo Dev <[email protected]>
133 lines
3.9 KiB
CSS
133 lines
3.9 KiB
CSS
@import 'tailwindcss';
|
|
@import '@hanzo/docs-base-ui/css/neutral.css';
|
|
@import '@hanzo/docs-base-ui/css/preset.css';
|
|
|
|
/* Monochrome smoke-glass zen — dark by default, no light mode */
|
|
:root,
|
|
.dark {
|
|
--fd-primary: 245 245 246; /* near-white accent */
|
|
--fd-background: 0 0 0; /* pure black */
|
|
--fd-foreground: 245 245 246; /* ink-100 */
|
|
--fd-muted: 16 16 18; /* glass base */
|
|
--fd-muted-foreground: 150 150 156; /* ink-400 */
|
|
--fd-accent: 24 24 27; /* zinc-900 */
|
|
--fd-accent-foreground: 245 245 246;
|
|
--fd-border: 255 255 255 / 0.08;
|
|
|
|
--glass: rgba(255, 255, 255, 0.025);
|
|
--glass-strong: rgba(255, 255, 255, 0.05);
|
|
--glass-border: rgba(255, 255, 255, 0.08);
|
|
--glass-border-strong: rgba(255, 255, 255, 0.16);
|
|
--blur: blur(22px) saturate(120%);
|
|
--sheen: linear-gradient(135deg, #ffffff 0%, #d4d4d8 45%, #8a8a90 100%);
|
|
}
|
|
|
|
html, body {
|
|
background: #000;
|
|
color: rgb(245 245 246);
|
|
-webkit-font-smoothing: antialiased;
|
|
}
|
|
|
|
/* Drifting monochrome smoke */
|
|
body::before {
|
|
content: '';
|
|
position: fixed;
|
|
inset: -20vh -10vw;
|
|
z-index: -2;
|
|
background:
|
|
radial-gradient(38vw 38vw at 22% 8%, rgba(255, 255, 255, 0.05), transparent 60%),
|
|
radial-gradient(45vw 45vw at 85% 18%, rgba(255, 255, 255, 0.03), transparent 62%),
|
|
radial-gradient(50vw 40vw at 60% 100%, rgba(255, 255, 255, 0.028), transparent 65%);
|
|
filter: blur(30px);
|
|
animation: smoke-drift 28s ease-in-out infinite alternate;
|
|
pointer-events: none;
|
|
}
|
|
body::after {
|
|
content: '';
|
|
position: fixed;
|
|
inset: 0;
|
|
z-index: -1;
|
|
background:
|
|
linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, transparent 18%),
|
|
radial-gradient(120% 80% at 50% -10%, transparent 60%, rgba(0, 0, 0, 0.6) 100%);
|
|
pointer-events: none;
|
|
}
|
|
@keyframes smoke-drift {
|
|
0% { transform: translate3d(-2%, -1%, 0) scale(1.02); opacity: 0.75; }
|
|
50% { transform: translate3d(2%, 1.5%, 0) scale(1.08); opacity: 1; }
|
|
100% { transform: translate3d(-1%, 2%, 0) scale(1.04); opacity: 0.8; }
|
|
}
|
|
@media (prefers-reduced-motion: reduce) {
|
|
body::before { animation: none; }
|
|
}
|
|
|
|
/* Reusable smoke-glass primitives for the landing hero */
|
|
.enso-glow { filter: drop-shadow(0 0 16px rgba(255, 255, 255, 0.2)); }
|
|
.sheen-text {
|
|
background: var(--sheen);
|
|
-webkit-background-clip: text;
|
|
background-clip: text;
|
|
-webkit-text-fill-color: transparent;
|
|
}
|
|
.glass-card {
|
|
background: var(--glass);
|
|
backdrop-filter: var(--blur);
|
|
-webkit-backdrop-filter: var(--blur);
|
|
border: 1px solid var(--glass-border);
|
|
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 10px 40px rgba(0, 0, 0, 0.45);
|
|
transition: border-color 0.25s ease, background 0.25s ease, transform 0.25s ease;
|
|
}
|
|
.glass-card:hover {
|
|
border-color: var(--glass-border-strong);
|
|
background: var(--glass-strong);
|
|
transform: translateY(-3px);
|
|
}
|
|
.btn-glass {
|
|
backdrop-filter: var(--blur);
|
|
-webkit-backdrop-filter: var(--blur);
|
|
border: 1px solid var(--glass-border-strong);
|
|
background: var(--glass-strong);
|
|
transition: background 0.25s ease, color 0.25s ease, transform 0.2s ease;
|
|
}
|
|
.btn-glass:hover { background: rgba(255, 255, 255, 0.1); transform: translateY(-2px); }
|
|
.btn-solid {
|
|
background: rgba(255, 255, 255, 0.92);
|
|
color: #050506;
|
|
transition: background 0.25s ease, transform 0.2s ease, box-shadow 0.25s ease;
|
|
}
|
|
.btn-solid:hover { background: #fff; transform: translateY(-2px); box-shadow: 0 12px 34px rgba(255, 255, 255, 0.16); }
|
|
|
|
/* Ensō (円相) — self-drawing brushstroke */
|
|
.enso {
|
|
display: block;
|
|
overflow: visible;
|
|
}
|
|
|
|
.enso-stroke {
|
|
fill: none;
|
|
stroke-dasharray: 1;
|
|
stroke-dashoffset: 1;
|
|
animation: enso-draw 1.9s cubic-bezier(0.22, 1, 0.36, 1) forwards;
|
|
}
|
|
|
|
@keyframes enso-draw {
|
|
0% {
|
|
stroke-dashoffset: 1;
|
|
opacity: 0.2;
|
|
}
|
|
20% {
|
|
opacity: 1;
|
|
}
|
|
100% {
|
|
stroke-dashoffset: 0;
|
|
opacity: 1;
|
|
}
|
|
}
|
|
|
|
@media (prefers-reduced-motion: reduce) {
|
|
.enso-stroke {
|
|
animation: none;
|
|
stroke-dashoffset: 0;
|
|
}
|
|
}
|