/* Hallmark · checked: 2026-10-26 · genre: modern-minimal (inferred) · built: the project · redesign: polish · v2.0.0 */
/* Hallmark · pre-emit critique: P4 H4 E3 S5 R4 V3 · weakest: E, repeated labels and missing states; normalised type, spacing and interactive feedback. */
/* Hallmark · reworded "Your work belongs to you." to "Local files. Open formats." · 54 folds the informative file label into its heading. */
/* Hallmark · waive 25 · documentation prose shares its existing 720px column with schemas and tables · Keeping the docs column preserves the layout requested by the owner. */
/* Hallmark · answered F1 · authored technical prose and generated schema descriptions retain their punctuation; legal and disclaimer text remains verbatim. */
/* Hallmark · answered F4 · the hero has one filled primary style; Download for Mac uses the page background and a border, and the actions stack vertically. */
/* Hallmark · answered F7 · the existing editor capture and recorded comparison frames are real Voxelite evidence; their shared borders remain at polish depth. */
/* Hallmark · answered F15 · existing marketing and documentation widths and column gaps stay as requested; changing the grid system requires restyle depth. */
/* Hallmark · finish-review: in-thread · 3 visual findings resolved · kept layout and product evidence preserved · verification pending title and checker decisions. */
@font-face{font-family:Geist;src:url('/assets/fonts/Geist.woff2') format('woff2');font-weight:100 900;font-display:optional}
@font-face{font-family:'Geist Mono';src:url('/assets/fonts/GeistMono.woff2') format('woff2');font-weight:100 900;font-display:optional}
/* Metric matching at weight 400, units/em 1000, ascent 1005, descent 295, gap 0.
   Size = Geist / fallback advance sum for A-Z a-z 0-9. Arial-compatible
   Liberation Sans: 36.785 / 35.90234375; Courier-compatible Liberation Mono:
   37.2 / 37.2060546875. Overrides = Geist metric / units / size adjustment. */
@font-face{font-family:'Geist Fallback';src:local('Arial'),local('Helvetica'),local('Liberation Sans');size-adjust:102.45849%;ascent-override:98.08850%;descent-override:28.79215%;line-gap-override:0%}
@font-face{font-family:'Geist Mono Fallback';src:local('Courier New'),local('Liberation Mono');size-adjust:99.98373%;ascent-override:100.51636%;descent-override:29.50480%;line-gap-override:0%}
:root{color-scheme:dark;--font-body:Geist,'Geist Fallback',system-ui,sans-serif;--font-code:'Geist Mono','Geist Mono Fallback',monospace;--clear:transparent;--current:currentColor;--workshop-slate:#375966;--workshop-mist:#78979a;--workshop-moss:#778d57;--workshop-wood:#9e7750;--workshop-amber:#f0a84d;--workshop-cream:#f7dfae;--bg:#000;--fg:#fafafa;--muted:#a3a3a3;--line:#242424;--soft:#121212;--accent:#93c5fd;--on-accent:#000}html[data-theme=light]{color-scheme:light;--bg:#fff;--fg:#171717;--muted:#525252;--line:#e5e5e5;--soft:#f7f7f7;--accent:#1d4ed8;--on-accent:#fff}
*{box-sizing:border-box}html{overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:96px}body{overflow-x:clip;margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 var(--font-body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{touch-action:manipulation}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{background:var(--accent);color:var(--on-accent)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{overflow-wrap:break-word;min-width:0;text-wrap:balance;font-weight:560;line-height:1.08;letter-spacing:-.045em}p{color:var(--muted)}code,.mono{font-family:var(--font-code)}.step{font-family:var(--font-body)}.shell{max-width:1200px;margin:auto;padding-inline:24px}.header{border-bottom:1px solid var(--line);background:var(--bg)}.nav{height:80px;display:flex;align-items:center;gap:64px}.brand{font-size:21px;font-weight:620;letter-spacing:-.7px;display:inline-flex;gap:12px;align-items:center}.brand img{width:25px;height:25px}.nav nav{display:flex;gap:32px;font-size:14px;color:var(--muted)}.nav-end{margin-left:auto;display:flex;align-items:center;gap:20px}.theme-toggle{display:grid;place-items:center;background:none;border:0;width:44px;height:44px;border-radius:6px}.theme-toggle:hover{background:var(--soft)}.theme-toggle svg{width:19px;height:19px;stroke:var(--current);fill:none;stroke-width:1.5}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:0 20px;border:1px solid var(--line);border-radius:6px;font-size:14px;font-weight:520;white-space:nowrap;background:var(--bg)}.button:hover{background:var(--soft);color:var(--fg);border-color:var(--muted)}.button.primary{background:var(--fg);color:var(--bg);border-color:var(--fg)}.button.primary:hover{opacity:.85}.button.small{min-height:40px;padding-inline:16px;font-size:13px}.actions{display:flex;justify-content:center;gap:12px;align-items:center}.hero{text-align:center;padding-top:68px}.nav-label{font-size:11px;letter-spacing:0;font-weight:450;line-height:1.6}.hero h1{font-size:clamp(44px,6.3vw,82px);margin-top:24px;letter-spacing:-.06em;line-height:1.03}.lede{font-size:19px;line-height:1.5;margin:24px 0 28px}.editor-shot{text-align:left;margin-top:48px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.shot-top{display:flex;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--line);font-size:11px;color:var(--muted)}.shot-top .mono{letter-spacing:0}.editor-shot img{display:block;width:100%;height:auto}.editor-shot figcaption{display:flex;justify-content:space-between;padding:12px 20px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.qualities{display:flex;justify-content:space-between;padding:28px 24px;color:var(--muted);font-size:12px;border-bottom:1px solid var(--line)}.section{padding-top:112px;padding-bottom:100px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:80px;margin-bottom:48px}.section-heading h2{font-size:48px;margin-top:20px}.section-heading>p{max-width:370px;font-size:16px;line-height:1.7}.workflow-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:64px;align-items:center}.code-panel{border:1px solid var(--line);border-radius:8px;overflow:hidden;min-width:0}.panel-bar{display:flex;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line);font-size:11px;color:var(--muted)}pre{overflow:auto;font:13px/1.9 var(--font-code);tab-size:2}.code-panel pre{margin:0;padding:32px 24px}.code-comment{color:var(--muted)}.code-key,.code-string{color:var(--accent)}.panel-foot{border-top:1px solid var(--line);padding:16px 20px;font-size:12px;color:var(--muted)}.panel-foot a{color:var(--fg)}.workflow-steps article{display:flex;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.workflow-steps article:first-child{padding-top:0}.workflow-steps article:last-child{border-bottom:0;padding-bottom:0}.step{font-size:12px;color:var(--muted);padding-top:4px}.workflow-steps h3,.feature-grid h3{font-size:19px;letter-spacing:-.025em;line-height:1.4;margin-bottom:8px}.workflow-steps p,.feature-grid p{font-size:14px;line-height:1.7}.host-line{display:flex;align-items:center;gap:32px;font-size:14px;margin-top:40px;padding:24px 0;border-block:1px solid var(--line)}.host-line>span{color:var(--muted);font-size:12px}.host-note{margin-left:auto}#editor{padding-top:28px}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-block:1px solid var(--line)}.feature-grid article{padding:32px;border-right:1px solid var(--line)}.feature-grid article:first-child{padding-left:0}.feature-grid article:last-child{padding-right:0;border:0}.feature-symbol{font-size:26px;display:block;margin-bottom:24px;line-height:1;color:var(--muted)}.file-strip{margin-top:64px;display:flex;align-items:center;justify-content:space-between;gap:32px}.file-strip h3{font-size:30px;margin-top:16px}.file-strip p:not(.nav-label){font-size:14px;margin-top:16px}.text-link{display:inline-flex;align-items:center;gap:16px;font-size:14px}.file-strip .text-link{margin-top:24px}.file-types{display:flex;gap:16px}.file-types span{width:150px;min-height:150px;border:1px solid var(--line);border-radius:6px;padding:20px;display:flex;flex-direction:column;justify-content:space-between}.file-types b{font:23px var(--font-code)}.file-types small{color:var(--muted);font-size:12px;line-height:1.5}.open-source{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:80px}.open-source h2{font-size:32px;margin:20px 0}.open-source p{font-size:14px}.open-source .actions{flex-direction:column;gap:20px}.footer{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-block:36px}.footer .brand{display:flex;flex-direction:column;align-items:flex-start;font-size:18px;gap:4px}.footer .brand span{font-weight:400;letter-spacing:0}.footer nav{display:flex;gap:28px;font-size:12px;color:var(--muted)}.caption{font-size:12px;color:var(--muted)}.skip{position:fixed;top:-100px;left:20px;z-index:10;background:var(--fg);color:var(--bg);padding:12px}.skip:focus{top:10px}
/* Documentation shares the editor's type and surface tokens. */
.docs-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:64px;padding-top:48px;padding-bottom:96px}.docs-nav{align-self:start;position:sticky;top:32px;font-size:14px}.docs-nav .nav-label{margin:0 0 16px}.docs-nav a{display:block;padding:8px 12px;margin-left:-12px;color:var(--muted);border-radius:5px}.docs-nav a[aria-current=page]{background:var(--soft);color:var(--fg)}.docs-content{max-width:800px;min-width:0}.docs-content>h1{font-size:46px;margin:16px 0 24px}.docs-content h2{font-size:28px;margin:52px 0 20px;scroll-margin-top:32px}.docs-content h3{font-size:20px;margin:32px 0 16px;scroll-margin-top:32px;overflow-wrap:break-word}.docs-content p{margin:16px 0}.docs-content li{margin-block:8px;color:var(--muted)}.docs-content a:not(.button){color:var(--accent);text-decoration:underline;text-underline-offset:4px}.docs-content pre{background:var(--soft);border:1px solid var(--line);padding:20px;border-radius:6px;margin:24px 0}.docs-content code{font-size:.85em;overflow-wrap:anywhere}.docs-content pre code{font-size:12px;overflow-wrap:normal}.docs-content table{border-collapse:collapse;width:100%;font-size:14px;margin:24px 0}.docs-content th,.docs-content td{border-bottom:1px solid var(--line);text-align:left;padding:12px;vertical-align:top}.docs-content th{font-weight:550}.docs-content td{color:var(--muted)}.table-scroll{overflow-x:auto}.notice{border-left:2px solid var(--accent);padding:4px 20px;margin:28px 0}.tool{border-top:1px solid var(--line);margin-top:48px;padding-top:8px}.tool summary{cursor:pointer;padding:12px 0;min-height:44px;font-size:14px}.tool details pre{max-height:560px}.tool-index{display:flex;flex-wrap:wrap;gap:8px 20px;margin:24px 0}.tool-index a{font:12px/1.8 var(--font-code);overflow-wrap:anywhere}.copy-code{display:block;margin:-20px 0 24px auto;background:var(--bg);border:1px solid var(--line);border-radius:5px;padding:8px 12px;min-height:36px;font-size:12px}.docs-links{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-block:32px}.docs-links a{padding:24px;border:1px solid var(--line);border-radius:6px}.docs-links b{display:block}.docs-links span{display:block;color:var(--muted);font-size:14px;margin-top:8px}.doc-next{border-top:1px solid var(--line);margin-top:48px;padding-top:24px;font-size:14px}
@media(max-width:1000px){.nav{gap:32px}.nav-end{gap:8px}.section-heading{gap:40px}.workflow-grid{gap:32px}.file-types span{width:120px}.host-line{gap:24px}.footer>.caption{display:none}.docs-layout{gap:36px;grid-template-columns:175px minmax(0,1fr)}}
@media(max-width:700px){.shell{padding-inline:24px}.header .shell{padding-inline:20px}.nav{height:72px;gap:20px}.nav nav{margin-left:auto;gap:20px}.nav nav a:not(:last-child){display:none}.nav-end{margin-left:0}.nav-end>.button{display:none}.brand{font-size:20px}.hero{padding-top:48px}.hero h1{font-size:48px;margin-top:24px;line-height:1.07}.nav-label{font-size:10px}.lede{font-size:17px;margin:24px 0}.hero .actions{flex-direction:column;gap:12px}.hero .button{width:100%;max-width:340px;justify-content:space-between;padding-inline:20px}.editor-shot{margin-top:36px;margin-inline:-8px}.shot-top{padding:12px;font-size:10px}.shot-top>span:last-child{display:none}.editor-shot figcaption{padding:12px;font-size:10px;gap:12px}.editor-shot figcaption span:last-child{max-width:130px;text-align:right}.qualities{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:24px 0;font-size:11px}.section{padding-block:64px}.section-heading{display:block;margin-bottom:32px}.section-heading h2{font-size:36px;margin-top:16px}.section-heading>p{font-size:15px;max-width:none;margin-top:24px}.workflow-grid{grid-template-columns:minmax(0,1fr);gap:32px}.panel-bar{padding:16px;font-size:10px}.code-panel pre{padding:24px 16px;font-size:11px}.panel-foot{padding:16px;font-size:11px}.panel-foot a{display:block;margin-top:4px}.workflow-steps article{padding:24px 0}.workflow-steps p,.feature-grid p{font-size:14px}.host-line{flex-wrap:wrap;gap:20px 24px;margin-top:28px;padding-block:24px}.host-line>span:first-child{flex-basis:100%}.host-note{margin:0;flex-basis:100%}#editor{padding-top:0}.feature-grid{grid-template-columns:minmax(0,1fr)}.feature-grid article,.feature-grid article:first-child,.feature-grid article:last-child{padding:24px 0;border:0;border-bottom:1px solid var(--line)}.feature-grid article:last-child{border:0}.feature-symbol{margin-bottom:16px;font-size:24px}.file-strip{display:block;margin-top:40px}.file-strip h3{font-size:28px}.file-types{margin-top:28px;gap:8px}.file-types span{width:calc((100% - 16px)/3);min-height:125px;padding:12px}.file-types b{font-size:20px}.file-types small{font-size:11px}.open-source{display:block}.open-source h2{font-size:30px;max-width:300px}.open-source .actions{align-items:flex-start;margin-top:28px;gap:16px}.footer{display:block;padding-block:28px}.footer nav{flex-wrap:wrap;gap:24px;margin-top:24px}.docs-layout{display:block;padding-top:24px}.docs-nav{position:static;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:32px;display:flex;flex-wrap:wrap;gap:4px 12px}.docs-nav .nav-label{flex-basis:100%;margin-bottom:8px}.docs-nav a{font-size:13px;margin:0;padding:8px 8px}.docs-content>h1{font-size:38px}.docs-content h2{font-size:26px}.docs-content h3{font-size:18px}.docs-content pre{padding:16px}.docs-content table{font-size:13px}.docs-content td,.docs-content th{padding:12px 8px}.docs-links{grid-template-columns:minmax(0,1fr)}}
/* Tight SVG viewBoxes let the glyph sit on the label baseline at 1.2 cap heights. */
.button .button-label{display:inline-block}
.button .apple-logo{width:auto;height:.85em;height:1.2cap;vertical-align:baseline;margin-inline-end:.35em;overflow:visible;fill:currentColor;stroke:none}
@media(prefers-reduced-motion:reduce){html{overflow-x:clip;scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Review 1: make the evidence legible and the device requirements immediate. */
.session-proof{margin-top:48px;padding-top:48px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:center}.session-proof h3{font-size:38px;margin:16px 0 20px}.session-proof p:not(.nav-label){font-size:15px;max-width:390px}.session-proof .text-link{margin-top:20px}.session-proof figure{max-width:410px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.session-crop{height:318px;position:relative;overflow:hidden}.session-crop img{position:absolute;max-width:none;width:1440px;height:900px;right:0;top:-217px}.session-proof figcaption{padding:16px 16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.palette-proof{display:flex;gap:4px;height:26px;margin-bottom:24px}.palette-proof i{display:block;width:26px;height:26px;border-radius:4px;background:var(--swatch)}.panel-bar a,.panel-foot a{font-size:13px;display:inline-flex;min-height:32px;align-items:center}.panel-bar{align-items:center}.footer nav a{min-height:44px;display:inline-flex;align-items:center;font-size:13px}.host-line a{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:700px){.hero{padding-top:36px}.hero h1{font-size:46px}.editor-shot>a{display:block;overflow:hidden}.editor-shot img{width:100%;height:310px;object-fit:cover;object-position:35% center}.editor-shot figcaption{font-size:12px;align-items:center}.editor-shot figcaption a{max-width:140px;text-align:right;min-height:44px;display:flex;align-items:center}.shot-top{font-size:11px}.session-proof{grid-template-columns:minmax(0,1fr);gap:28px;margin-top:36px;padding-top:36px}.session-proof h3{font-size:32px}.session-proof figure{width:100%}.session-crop{height:300px}.session-crop img{width:1325px;height:auto;top:-198px}.session-proof figcaption{font-size:12px}.panel-bar{gap:12px;flex-wrap:wrap}.panel-bar a{font-size:13px}.code-panel pre{font-size:12px}.panel-foot{font-size:12px}.panel-foot a{font-size:13px}.host-line{gap:8px 24px}.feature-symbol{margin-bottom:16px}.palette-proof{margin-bottom:16px}}

/* Review 2: lead with recorded agent evidence and compose the mobile canvas. */
.mobile-label{display:none}.hero{padding-top:44px}.hero h1{margin-top:20px}.lede{margin:20px 0 24px}.editor-shot{margin-top:32px}.panel-bar a{gap:8px}.session-proof{margin-top:0;padding-top:0;border-top:0;margin-bottom:40px}.session-proof figure{width:350px}.session-crop{height:318px}.text-link{min-height:44px}.file-types span{min-height:116px}.section{padding-bottom:80px}
@media(max-width:700px){.desktop-label{display:none}.mobile-label{display:inline}.hero{padding-top:28px}.hero h1{font-size:44px}.lede{margin:20px 0}.editor-shot>a{position:relative;aspect-ratio:1.14;height:auto}.editor-shot img{position:absolute;width:205%;height:auto;max-width:none;left:-29%;top:-22%;object-fit:initial}.editor-shot figcaption>span{max-width:150px}.session-proof{margin-bottom:32px;gap:24px}.session-proof figure{width:100%;max-width:324px}.session-crop{height:300px}.session-crop img{width:1325px;right:0;top:-198px}.section{padding-block:48px}.section-heading{margin-bottom:28px}.workflow-steps article{padding-block:20px}.feature-grid article,.feature-grid article:first-child,.feature-grid article:last-child{padding-block:20px}.file-types span{min-height:105px}.open-source{padding-block:48px}}

/* Review 3: actual render comparison and a useful phone-sized conversion path. */
.edit-proof{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.edit-proof figure{border:1px solid var(--line);border-radius:8px;overflow:hidden}.proof-label{display:flex;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line);font:12px var(--font-body);color:var(--muted)}.edit-proof img{display:block;width:100%;height:auto}.proof-note{font-size:12px;margin:16px 0 40px}.proof-note a{display:inline-flex;align-items:center;min-height:44px;color:var(--fg)}.mobile-session{display:none}.open-source h2 span{display:inline-block}
@media(max-width:700px){.edit-proof{gap:12px}.proof-label{display:block;padding:12px;font-size:11px;line-height:1.6}.proof-label span{display:block}.proof-label span:first-child{color:var(--fg)}.proof-label span+span{font-family:var(--font-body);font-size:12px;margin-top:4px}.proof-note{line-height:1.7;margin-bottom:24px}.proof-note a{display:flex}.mobile-session{display:block;margin-top:16px;text-align:left;border:1px solid var(--line);border-radius:8px;overflow:hidden}.mobile-session-crop{height:104px;position:relative;overflow:hidden}.mobile-session-crop img{width:1325px;height:auto;max-width:none;position:absolute;right:0;top:-280px}.mobile-session p{border-top:1px solid var(--line);padding:12px 12px;font-size:12px}.editor-shot figcaption{display:flex;flex-direction:column;align-items:flex-start;gap:0}.editor-shot figcaption>span{max-width:none}.editor-shot figcaption a{max-width:none;text-align:left;min-height:32px}.open-source h2{max-width:none}.open-source h2 span{display:block}}

.docs-content{overflow-wrap:anywhere}
.markdown-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;margin:-8px 0 16px;font-size:12px;color:var(--muted)}
.markdown-actions button{background:none;border:0;padding:8px 0;min-height:36px;font-size:inherit;text-decoration:underline;text-underline-offset:4px}
.markdown-actions button:hover{color:var(--accent)}
.markdown-actions button:disabled{cursor:wait;opacity:.6}
.markdown-actions a{display:inline-flex;align-items:center;min-height:36px}
.markdown-actions [role=status]:empty{display:none}

/* Review 4: show the complete workspace on arrival and give evidence room. */
.proof-switch { display: none; }
.nav-label, .shot-top, .panel-bar { font-size: 12px; }
.hero-copy { min-width: 0; }
@media (min-width: 1100px) {
  .marketing .nav, .hero { max-width: 1344px; }
  .hero {
    display: grid;
    grid-template-columns: 380px minmax(0, 1fr);
    align-items: center;
    column-gap: 48px;
    padding-top: 56px;
    text-align: left;
  }
  .hero h1 { font-size: 56px; line-height: 1.06; margin-top: 24px; }
  .hero h1 span { display: block; }
  .hero .lede { font-size: 18px; margin: 24px 0; }
  .hero .actions { align-items: flex-start; flex-direction: column; gap: 12px; }
  .hero .button { min-width: 236px; justify-content: space-between; }
  .editor-shot { margin: 0; }
  .shot-top, .editor-shot figcaption { padding: 12px 16px; }
  .qualities { grid-column: 1 / -1; margin-top: 40px; padding: 24px 0; }
}
.proof-note { line-height: 1.8; margin-bottom: 32px; }
.proof-note a { font-size: 13px; }
.section-heading h2 { text-wrap: balance; }
.docs-content .page-contents {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 24px;
  padding: 16px 0;
  margin: 28px 0;
  border-block: 1px solid var(--line);
}
.page-contents .nav-label { flex-basis: 100%; color: var(--muted); }
.docs-content .page-contents a {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 44px;
  font-size: 14px;
  color: var(--fg);
  text-decoration: none;
}
.docs-content .page-contents a:hover { color: var(--accent); }
.docs-content .page-contents a span { color: var(--muted); }
.docs-content details > summary { cursor: pointer; padding-block: 12px; }
.code-example { margin: 24px 0; border: 1px solid var(--line); border-radius: 6px; overflow: hidden; }
.code-bar { display: flex; align-items: center; justify-content: space-between; padding: 0 8px 0 20px; border-bottom: 1px solid var(--line); }
.code-bar > span { color: var(--muted); font: 12px var(--font-body); }
.code-bar .copy-code { margin: 0; min-height: 44px; border: 0; background: none; }
.code-bar .copy-code:hover { color: var(--accent); }
.code-bar .copy-code:focus-visible { outline-offset: -4px; }
.docs-content .code-example pre { margin: 0; border: 0; border-radius: 0; }
@media (max-width: 700px) {
  .hero h1 { font-size: clamp(34px, 11vw, 44px); }
  .editor-shot { margin-top: 24px; }
  .editor-shot figcaption { flex-direction: row; align-items: center; justify-content: space-between; gap: 12px; }
  .editor-shot figcaption > span { max-width: 180px; }
  .editor-shot figcaption a { min-height: 44px; white-space: nowrap; }
  .mobile-session { margin-top: 12px; }
  .mobile-session-crop { height: 68px; }
  .mobile-session p { padding: 12px 12px; }
  .qualities { font-size: 12px; }
  .nav-label { font-size: 12px; letter-spacing: 0; }
  .edit-proof { display: block; }
  .proof-switch { display: block; border: 0; padding: 0; margin: 0 0 16px; }
  .proof-switch legend { color: var(--muted); font-size: 12px; margin-bottom: 12px; }
  .proof-options { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 4px; padding: 4px; border: 1px solid var(--line); border-radius: 8px; }
  .proof-options input { position: absolute; width: 1px; height: 1px; opacity: 0; }
  .proof-options label { display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 44px; font-size: 14px; border-radius: 4px; cursor: pointer; color: var(--muted); }
  .proof-options label span { font: 12px var(--font-body); }
  .proof-options input:checked + label { background: var(--fg); color: var(--bg); }
  .proof-options input:focus-visible + label { outline: 2px solid var(--accent); outline-offset: 4px; }
  .edit-proof:has(#proof-before:checked) .proof-after,
  .edit-proof:has(#proof-after:checked) .proof-before { display: none; }
  .proof-label { display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; font-size: 12px; }
  .proof-label span + span { margin-top: 0; }
  .proof-note { margin: 16px 0 24px; }
  .panel-bar { font-size: 12px; }
  .panel-bar a { font-size: 12px; }
  .file-types small { font-size: 12px; }
  .docs-content .page-contents { gap: 4px; padding-block: 12px; margin-block: 24px; }
  .page-contents .nav-label { margin-bottom: 8px; }
  .docs-content .page-contents a { flex-basis: 100%; }
}

/* Focus the story on the work; one invitation closes the page. */
.workflow-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px; }
.workflow-steps article, .workflow-steps article:first-child, .workflow-steps article:last-child { padding: 24px 0 0; border: 0; border-top: 1px solid var(--line); gap: 16px; }
.workflow-guide { margin-top: 24px; }
.file-strip { padding-top: 32px; margin-top: 32px; }
.file-strip > div { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); column-gap: 48px; width: 100%; }
.file-strip h3 { grid-column: 1; margin-top: 0; }
.file-strip p:not(.nav-label) { grid-column: 2; grid-row: 1; margin: 0; align-self: center; }
.file-strip .text-link { grid-column: 2; margin-top: 8px; }
.footer { border-top: 0; }
.footer nav { align-items: center; }
.footer .github-link { display: inline-flex; align-items: center; gap: 8px; }
.footer .github-link svg { flex: none; }

/* Static section navigation remains available with JavaScript disabled. */
.documentation .shell { max-width: 1344px; }
.docs-layout { grid-template-columns: 190px minmax(0, 1fr) 180px; gap: 48px; }
.docs-content { max-width: 720px; }
.docs-nav { font-size: 13px; }
.docs-nav .nav-label { font-size: 12px; letter-spacing: 0; }
.docs-toc { position: sticky; top: 32px; align-self: start; border-left: 1px solid var(--line); padding-left: 20px; }
.docs-toc .nav-label { letter-spacing: 0; margin-bottom: 16px; }
.docs-toc a { display: block; color: var(--muted); font-size: 13px; line-height: 1.5; padding: 8px 0; }
.docs-toc a:hover { color: var(--fg); }
.docs-mobile-nav { display: none; }
.docs-content .setup-paths { display: flex; gap: 12px; margin: 24px 0; }
.docs-content .setup-paths a { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 48px; padding: 0 16px; border: 1px solid var(--line); border-radius: 6px; font-size: 14px; text-decoration: none; color: var(--fg); }
.setup-paths a:hover { background: var(--soft); }
.setup-paths a span { color: var(--muted); }
.docs-content > .lede { font-size: 18px; }
@media (min-width: 701px) and (max-width: 1099px) {
  .documentation .docs-layout { display: block; max-width: 848px; }
  .docs-nav, .docs-toc { display: none; }
  .docs-content { max-width: none; }
}
@media (max-width: 700px) {
  .hero .lede { margin: 16px 0; }
  .hero .actions { gap: 4px; }
  .hero .shot-top { display: none; }
  .editor-shot { margin-top: 20px; }
  .editor-shot figcaption { padding: 4px 12px; }
  .mobile-session { margin-inline: -8px; }
  .mobile-session p { padding: 8px 12px; }
  .workflow-steps { grid-template-columns: minmax(0,1fr); gap: 0; }
  .workflow-steps article, .workflow-steps article:first-child, .workflow-steps article:last-child { padding: 20px 0; }
  .workflow-guide { margin-top: 0; }
  .host-line { margin-top: 20px; }
  .feature-grid article, .feature-grid article:first-child, .feature-grid article:last-child { display: grid; grid-template-columns: 24px minmax(0,1fr); column-gap: 16px; padding-block: 24px; }
  .feature-grid h3, .feature-grid p { grid-column: 2; }
  .feature-symbol { grid-column: 1; grid-row: 1 / 3; font-size: 22px; margin: 4px 0 0; }
  .palette-proof { grid-column: 2; height: 22px; margin-bottom: 16px; }
  .palette-proof i { width: 22px; height: 22px; }
  .file-strip { margin-top: 8px; padding-top: 24px; }
  .file-strip > div { display: block; }
  .file-strip h3 { font-size: 26px; margin-bottom: 16px; }
  .file-strip .text-link { margin-top: 12px; }
  .docs-layout { display: block; padding-top: 28px; }
  .docs-nav, .docs-toc { display: none; }
  .docs-content > .nav-label { font-size: 12px; letter-spacing: 0; margin: 0; }
  .docs-content > h1 { font-size: 36px; margin: 16px 0 16px; }
  .docs-content > .lede { font-size: 17px; margin: 0; }
  .docs-content .setup-paths { gap: 8px; margin: 24px 0 20px; }
  .docs-content .setup-paths a { flex: 1; padding-inline: 12px; gap: 8px; }
  .docs-content h2 { margin-top: 36px; }
}

@media (max-width: 1099px) {
  .docs-mobile-nav { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 20px; position: relative; border-bottom: 1px solid var(--line); }
  .docs-mobile-nav summary { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 52px; list-style: none; font-size: 13px; color: var(--muted); cursor: pointer; }
  .docs-mobile-nav summary::-webkit-details-marker { display: none; }
  .docs-mobile-nav summary::after { content: '+'; font: 16px var(--font-body); }
  .docs-mobile-nav details[open] summary::after { content: '−'; }
  .docs-mobile-nav nav { position: absolute; z-index: 5; top: 100%; left: 16px; right: 16px; padding: 8px; background: var(--bg); border: 1px solid var(--line); border-radius: 6px; }
  .docs-mobile-nav a { display: flex; align-items: center; min-height: 44px; padding: 8px 12px; color: var(--muted); font-size: 14px; border-radius: 4px; }
  .docs-mobile-nav a[aria-current=page], .docs-mobile-nav a:hover { color: var(--fg); background: var(--soft); }
}

@media (max-width: 700px) {
  .hero { padding-top: 24px; }
  .hero .editor-shot { margin-top: 12px; }
}

.nav nav a { display: inline-flex; align-items: center; min-height: 44px; }
.nav nav a[aria-current=page] { color: var(--fg); }

/* Native download uses the shared type, controls and theme tokens. */
.download-page { max-width: 800px; padding-block: 64px 80px; }
.download-intro h1 { font-size: clamp(36px, 5vw, 56px); margin-top: 24px; }
.download-intro .actions { justify-content: flex-start; flex-wrap: wrap; gap: 12px 24px; }
.download-note { margin-top: 16px; }
.download-alternatives { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; border-top: 1px solid var(--line); margin-top: 48px; padding-top: 24px; }
@media (max-width: 1000px) {
  .marketing .nav nav a[href^="#"] { display: none; }
}
@media (max-width: 700px) {
  .nav { gap: 8px; }
  .nav nav { gap: 12px; }
  .nav nav a[href="/docs/"], .nav nav a[href="/download/"] { display: inline-flex; }
  .hero .hero-download { display: none; }
  .download-page { padding-block: 40px 48px; }
  .download-alternatives { flex-direction: column; gap: 16px; }
}

/* Shared states apply to navigation, disclosures, buttons and native inputs. */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible, [tabindex]:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
a:active, button:active, summary:active { opacity: .7; }
button:disabled, input:disabled, select:disabled, textarea:disabled, [aria-disabled="true"], .proof-options input:disabled + label { opacity: .55; cursor: not-allowed; transform: none; }
.proof-options label:active { opacity: .7; }
.proof-options input:disabled + label { color: var(--muted); background: var(--soft); }
.editor-shot > a:focus-visible { display: block; outline-offset: -4px; }
.button.small { min-height: 44px; }
.nav-label { font-family: var(--font-body); letter-spacing: 0; }
.doc-next { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.doc-next a { display: inline-flex; align-items: center; min-height: 44px; }
.docs-content > .build-note { font-size: 14px; margin: 0 0 16px; }
html { scrollbar-color: var(--muted) var(--bg); caret-color: var(--fg); }

.docs-mobile-nav details:not([open]) nav { display: none; }
.docs-content .setup-paths a { white-space: nowrap; }

.docs-links b { font-weight: 550; }

/* Install instructions use the existing neutral controls and code examples. */
.install-block { border-block: 1px solid var(--line); margin: 24px 0; padding-bottom: 8px; }
.install-tabs { display: flex; flex-wrap: wrap; gap: 0 16px; border-bottom: 1px solid var(--line); }
.install-tabs button { background: none; border: 0; border-bottom: 2px solid transparent; padding: 12px 0; min-height: 44px; color: var(--muted); font-size: 14px; }
.install-tabs button[aria-selected=true] { border-bottom-color: var(--fg); color: var(--fg); }
.install-tabs button:hover { color: var(--fg); }
.install-tabs button:focus-visible { outline-offset: -2px; }
.install-enhanced [data-install-panel] > h3 { margin-top: 24px; }
.cursor-install { display: inline-flex; align-items: center; min-height: 44px; }
.cursor-install img { display: block; }
.cursor-install .badge-light, html[data-theme=light] .cursor-install .badge-dark { display: none; }
html[data-theme=light] .cursor-install .badge-light { display: block; }
