:root { color: #101418; background: #f6f7f4; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; letter-spacing: 0; } * { box-sizing: border-box; } body { margin: 0; } a { color: #0a7d59; text-decoration: none; } a:hover { text-decoration: underline; } button { border: 0; font: inherit; cursor: pointer; } button:disabled { cursor: wait; opacity: 0.72; } .shell { display: grid; grid-template-columns: 16rem minmax(0, 1fr); min-height: 100vh; } .rail { display: flex; flex-direction: column; gap: 1.5rem; padding: 1rem; border-right: 1px solid #d9ded4; background: #101418; color: #f6f7f4; } .brand { display: flex; align-items: center; gap: 0.75rem; } .brand small { display: block; margin-top: 0.15rem; color: #b5beb2; } .mark { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; border: 1px solid #5ac8a6; border-radius: 6px; color: #5ac8a6; font-weight: 800; } .rail nav { display: grid; gap: 0.5rem; } .rail nav a { color: inherit; min-width: 0; overflow-wrap: anywhere; min-height: 2.35rem; padding: 0.55rem 0.75rem; border: 1px solid #263039; border-radius: 6px; } .rail nav a.active, .rail nav a:hover { border-color: #3f5049; background: #1b2329; text-decoration: none; } .workspace { padding: 1.25rem; } .hero, .band { width: 100%; max-width: 72rem; margin: 0 auto 1rem; } .hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(16rem, 22rem); gap: 1rem; align-items: end; padding: 1.25rem 0 0.25rem; } .eyebrow, .section-head p, .tile p, .implementation-list p, .cli-panel p { color: #58615b; } .eyebrow { margin: 0 0 0.4rem; font-weight: 800; } h1, h2, h3, p { margin-top: 0; } h1 { margin-bottom: 0.45rem; font-size: 3rem; line-height: 1; } .lede { max-width: 52rem; margin-bottom: 0; font-size: 1.12rem; line-height: 1.55; } .hero-actions { display: flex; flex-wrap: wrap; gap: 0.65rem; margin-top: 1rem; } .status-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.5rem; } .status-grid span { min-height: 5rem; padding: 0.75rem; border: 1px solid #d6ddd2; border-radius: 8px; background: #ffffff; color: #58615b; } .status-grid strong { display: block; color: #101418; font-size: 1.4rem; } .band { padding: 1rem 0; } .section-head { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 0.8rem; } .section-head h2, .cli-panel h2 { margin-bottom: 0; font-size: 1.15rem; } .section-head p { max-width: 34rem; margin-bottom: 0; line-height: 1.45; } .primitive-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.75rem; } .tile, .schema-list article, .cli-panel, .soon-lead, .soon-grid article, .implementation-list article, .hire-panel, .hire-grid article, .coinpay-panel { border: 1px solid #d6ddd2; border-radius: 8px; background: #ffffff; } .tile { min-height: 10rem; padding: 0.85rem; } .tile h3, .implementation-list h3 { margin-bottom: 0.35rem; font-size: 1rem; } .tile p, .implementation-list p, .cli-panel p { margin-bottom: 0; line-height: 1.45; } .two-col { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(20rem, 0.9fr); gap: 1rem; } .coming-soon { padding-top: 1.2rem; } .soon-layout { display: grid; grid-template-columns: minmax(20rem, 0.95fr) minmax(0, 1.05fr); gap: 1rem; } .soon-lead { padding: 1rem; background: #eef7f3; } .agentbyte .soon-lead { background: #f7f3e8; } .credentials .soon-lead { background: #eef3f7; } .agentbyte .soon-lead span { border-color: #e3c878; color: #735b14; } .credentials .soon-lead span { border-color: #9fc3da; color: #225d77; } .soon-lead span { display: inline-block; margin-bottom: 0.75rem; padding: 0.35rem 0.5rem; border: 1px solid #a8d9c9; border-radius: 999px; color: #2d6f60; font-size: 0.9rem; font-weight: 800; } .soon-lead h3 { margin-bottom: 0.45rem; font-size: 1.25rem; } .soon-lead p { color: #39443e; line-height: 1.5; } .soon-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; } .soon-grid article { min-height: 8.5rem; padding: 0.85rem; } .soon-grid h3 { margin-bottom: 0.35rem; font-size: 1rem; } .soon-grid p { margin-bottom: 0; color: #58615b; line-height: 1.45; } .surface-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.75rem; margin-top: 0.75rem; } .surface-strip article { min-height: 7.25rem; padding: 0.85rem; border: 1px solid #d6ddd2; border-radius: 8px; background: #ffffff; } .surface-strip h3 { margin-bottom: 0.35rem; font-size: 1rem; } .surface-strip p { margin-bottom: 0; color: #58615b; line-height: 1.45; } .schema-list { display: grid; gap: 0.5rem; } .schema-list article { display: grid; gap: 0.35rem; min-height: 4.2rem; padding: 0.75rem; } code { overflow-wrap: anywhere; color: #2d6f60; } .cli-panel { padding: 1rem; } pre { overflow-x: auto; margin: 0.75rem 0; padding: 0.85rem; border-radius: 6px; background: #101418; color: #f6f7f4; } .implementation-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.75rem; } .implementation-list article { display: grid; grid-template-columns: 0.7rem 1fr; gap: 0.65rem; min-height: 9rem; padding: 0.85rem; } .implementation-list span { width: 0.7rem; height: 0.7rem; margin-top: 0.25rem; border-radius: 999px; background: #f0c56a; } .compare-table { display: grid; overflow: hidden; border: 1px solid #d6ddd2; border-radius: 8px; background: #ffffff; } .compare-row { display: grid; grid-template-columns: minmax(8rem, 0.6fr) repeat(2, minmax(0, 1fr)); border-top: 1px solid #e1e6dc; } .compare-row:first-child { border-top: 0; } .compare-row > * { margin: 0; padding: 0.85rem; border-left: 1px solid #e1e6dc; line-height: 1.45; } .compare-row > *:first-child { border-left: 0; } .compare-head { background: #eef7f3; } .compare-row p { color: #58615b; } .compare-note { margin-top: 0.75rem; } .hire-us { padding-top: 1.2rem; } .hire-layout { display: grid; grid-template-columns: minmax(20rem, 0.9fr) minmax(0, 1.1fr); gap: 1rem; } .hire-panel { padding: 1rem; background: #101418; color: #f6f7f4; } .hire-panel .eyebrow { color: #5ac8a6; } .hire-panel h3 { margin-bottom: 0.55rem; font-size: 1.35rem; } .hire-panel p { color: #ccd5ce; line-height: 1.5; } .price-row { display: flex; align-items: end; gap: 0.5rem; margin: 1rem 0; } .price-row strong { color: #ffffff; font-size: 2.4rem; line-height: 1; } .price-row span { color: #b5beb2; font-weight: 800; } .price-terms { color: #b5beb2; font-size: 0.85rem; line-height: 1.5; margin: -0.5rem 0 0; } .price-terms a { color: inherit; } .cta-row { display: flex; flex-wrap: wrap; gap: 0.65rem; } .project-request-form { display: grid; gap: 0.75rem; margin-top: 1rem; } .project-request-form label { display: grid; gap: 0.35rem; } .project-request-form label span { color: #8ee4c9; font-size: 0.78rem; font-weight: 800; text-transform: uppercase; } .project-request-form input, .project-request-form textarea { width: 100%; border: 1px solid #3f5049; border-radius: 6px; background: #171d1a; color: #f6f7f4; font: inherit; line-height: 1.45; padding: 0.7rem 0.75rem; } .project-request-form textarea { resize: vertical; } .project-request-form input::placeholder, .project-request-form textarea::placeholder { color: #7f8b84; } .button-primary, .button-secondary { display: inline-flex; min-height: 2.5rem; align-items: center; justify-content: center; padding: 0.6rem 0.85rem; border-radius: 6px; font-weight: 800; } .button-primary { background: #5ac8a6; color: #101418; } .button-secondary { border: 1px solid #3f5049; color: #f6f7f4; } .hire-stack { display: grid; gap: 0.75rem; } .hire-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; } .hire-grid article, .coinpay-panel { padding: 0.85rem; } .hire-grid h3, .coinpay-panel h3 { margin-bottom: 0.35rem; font-size: 1rem; } .hire-grid p, .coinpay-panel p { margin-bottom: 0; color: #58615b; line-height: 1.45; } .coinpay-panel pre { margin-bottom: 0; } .coinpay-result { margin-top: 0.85rem; color: #ccd5ce; } .coinpay-result:empty { display: none; } .coinpay-result strong { display: block; margin-bottom: 0.5rem; color: #ffffff; } .coinpay-result p { margin-bottom: 0; } .coinpay-result dl { display: grid; gap: 0.45rem; margin: 0; } .coinpay-result div { display: grid; gap: 0.15rem; } .coinpay-result dt { color: #8ee4c9; font-size: 0.8rem; font-weight: 800; text-transform: uppercase; } .coinpay-result dd { margin: 0; overflow-wrap: anywhere; } .coinpay-result img { width: min(12rem, 100%); height: auto; margin-top: 0.75rem; border-radius: 6px; background: #ffffff; } @media (max-width: 980px) { .primitive-grid, .implementation-list, .hire-grid, .surface-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); } .hero, .soon-layout, .two-col, .hire-layout { grid-template-columns: 1fr; } } @media (max-width: 720px) { .shell { grid-template-columns: minmax(0, 1fr); } .rail { border-right: 0; } .rail nav { grid-template-columns: repeat(4, minmax(0, 1fr)); } .rail nav a { text-align: center; } .workspace { padding: 0.9rem; } .section-head, .hero { align-items: start; flex-direction: column; } .status-grid, .primitive-grid, .soon-grid, .implementation-list, .hire-grid, .surface-strip { grid-template-columns: 1fr; } .compare-row { grid-template-columns: 1fr; } .compare-row > * { border-left: 0; border-top: 1px solid #e1e6dc; } .compare-row > *:first-child { border-top: 0; } h1 { font-size: 2.4rem; } } /* Rendered blog post HTML (autoblog payload) on the light workspace. */ .blog-content { color: #1f2933; } .blog-content a { color: #0a7d59; } .blog-content h2, .blog-content h3, .blog-content h4 { margin: 1.75rem 0 0.5rem; line-height: 1.25; color: #101418; } .blog-content p, .blog-content ul, .blog-content ol, .blog-content blockquote { margin: 0 0 1rem; } .blog-content img { max-width: 100%; height: auto; border-radius: 0.5rem; } .blog-content pre { background: #f1f3ef; border: 1px solid #e3e6e0; padding: 1rem; border-radius: 0.5rem; overflow: auto; } .blog-content code { background: rgba(16, 20, 24, 0.06); padding: 0.1rem 0.35rem; border-radius: 0.25rem; font-size: 0.9em; } .blog-content pre code { background: none; padding: 0; } .blog-content blockquote { border-left: 3px solid #d9ded4; padding-left: 1rem; color: #5b6b7a; } /* --------------------------------------------------- install command ----- */ /* Two placements of one command: `.install-cta` on the homepage hero, meant to be the first thing anyone sees, and `.install-rail` riding in the dark chrome on every page -- present, but never competing with the nav. */ .install-copy { flex: 0 0 auto; padding: 0.55rem 0.9rem; border-radius: 6px; background: #5ac8a6; color: #101418; font-weight: 800; line-height: 1; transition: background 120ms ease; } .install-copy:hover { background: #7ad9bd; } /* Confirmation has to survive the button's own text changing width, so the label is centred in a fixed box rather than reflowing the row. */ .install-copy.is-copied { background: #2d6f60; color: #f6f7f4; } .install-copy-sm { padding: 0.35rem 0.5rem; font-size: 0.72rem; } /* ---- homepage hero ---- */ .install-cta { margin: 1rem 0 0.25rem; padding: 0.9rem 1rem 0.8rem; border: 2px solid #5ac8a6; border-radius: 10px; background: #101418; color: #f6f7f4; } .install-cta-label { margin: 0 0 0.5rem; color: #5ac8a6; font-size: 0.78rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; } .install-cta-row { display: flex; align-items: center; gap: 0.75rem; } /* The command is the point of the box, so it gets the room: it scrolls on its own rather than wrapping mid-flag or pushing the Copy button off the edge. */ .install-cta-cmd { flex: 1 1 auto; min-width: 0; overflow-x: auto; padding: 0.55rem 0.7rem; border-radius: 6px; background: #1b2229; color: #f6f7f4; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 1rem; white-space: nowrap; } .install-cta-note { margin: 0.6rem 0 0; color: #b5beb2; font-size: 0.8rem; } .install-cta-note a { color: #5ac8a6; } /* ---- site chrome ---- */ .install-rail { display: flex; flex-direction: column; gap: 0.35rem; padding: 0.6rem; border: 1px solid #3f5049; border-radius: 8px; background: #171d24; } .install-rail-label { color: #8fa39a; font-size: 0.68rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; } .install-rail-row { display: flex; align-items: center; gap: 0.4rem; } .install-rail-row code { flex: 1 1 auto; min-width: 0; overflow-x: auto; color: #d7ded8; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.66rem; white-space: nowrap; } @media (max-width: 720px) { /* Stacked layout: the row would otherwise squeeze the command to nothing. */ .install-cta-row { flex-direction: column; align-items: stretch; } .install-cta-cmd { font-size: 0.85rem; } } /* Sidebar groups: broad first, each entry a page that drills down. */ .rail nav .nav-group-block { display: contents; } .rail nav .nav-group { display: block; margin: 0.9rem 0 0.25rem; padding: 0 0.6rem; font-size: 0.68rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: #7a8794; } .rail nav .nav-group:first-child { margin-top: 0.25rem; } .tile h3 a { color: inherit; text-decoration: none; } .tile .tile-specs { margin-top: 0.55rem; font-size: 0.85rem; line-height: 1.7; } .tile .tile-specs a { color: inherit; } .section-foot { margin: 1rem 0 0; font-size: 0.95rem; } /* Sidebar drill-down: the current family unfolds to its specs, a spec to its blocks. */ .rail nav .nav-branch { display: contents; } .rail nav .nav-children { display: flex; flex-direction: column; gap: 0.2rem; margin: 0.2rem 0 0.35rem 0.6rem; padding-left: 0.6rem; border-left: 1px solid #263039; } .rail nav .nav-children a { min-height: 1.9rem; padding: 0.3rem 0.6rem; font-size: 0.85rem; border-color: transparent; } .rail nav .nav-children a.active, .rail nav .nav-children a:hover { border-color: #3f5049; } @media (max-width: 720px) { .rail nav .nav-group, .rail nav .nav-children { grid-column: 1 / -1; } .rail nav .nav-children { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-left: 0; padding-left: 0; border-left: 0; } .rail nav .nav-children a { display: block; overflow-wrap: anywhere; text-align: left; } } /* Breadcrumb trail at the top of every page but the home page. */ .crumbs { width: 100%; max-width: 72rem; margin: 0 auto 0.75rem; font-size: 0.88rem; color: #5b6b7a; } .crumbs ol { display: flex; flex-wrap: wrap; gap: 0.35rem; list-style: none; margin: 0; padding: 0.35rem 0 0.75rem; border-bottom: 1px solid #e3e6e0; } .crumbs li + li::before { content: "›"; margin-right: 0.35rem; color: #9aa6b1; } .crumbs a { color: inherit; text-decoration: none; } .crumbs a:hover { text-decoration: underline; } .crumbs [aria-current="page"] { color: #101418; font-weight: 600; }