PageSourceSearch

https://keepreap.com/

html keepreap.com collected 2026-10-02 01:33:14 UTC 416,984 bytes, 2,837 lines download raw bytes

1<!DOCTYPE html><html lang="en" data-theme="warm-editorial" data-landing-bg="top" style="--kr-tc-textarea-min-h: 140px; --kr-tc-textarea-max-h: 320px; --kr-tc-textarea-radius: 12px; --kr-tc-textarea-padding-x: 12px; --kr-tc-textarea-padding-y: 10px; --kr-tc-textarea-font-size: 14px; --kr-tc-action-pill-h: 30px; --kr-tc-action-pill-radius: 999px; --kr-tc-action-pill-padding-x: 12px; --kr-tc-action-icon-size: 14px; --kr-tc-action-row-gap: 6px; --kr-tc-result-card-radius: 10px; --kr-tc-status-banner-padding-x: 10px; --kr-tc-status-banner-padding-y: 6px; --kr-tc-status-banner-radius: 6px; --kr-tc-menu-radius: 12px; --kr-tc-menu-min-w: 190px; --kr-cc-radius: 12px; --kr-cc-padding-x: 12px; --kr-cc-padding-top: 6px; --kr-cc-padding-bottom: 12px; --kr-cc-gap-y: 6px; --kr-cc-list-gap-y: 12px; --kr-cc-text-size: 14px; --kr-cc-text-line-h: 1.4; --kr-cc-meta-size: 12px; --kr-cc-chip-padding-x: 6px; --kr-cc-chip-padding-y: 2px; --kr-cc-chip-gap-x: 8px; --kr-cc-chip-icon-size: 12px; --kr-cc-chip-text-size: 11px; --kr-cc-favicon-size: 14px; --kr-cc-chevron-size: 16px; --kr-cc-block-padding-x: 8px; --kr-cc-block-padding-y: 6px; --kr-cc-block-gap-y: 6px;"><head>
2    <meta charset="UTF-8">
3    <meta name="viewport" content="width=device-width, initial-scale=1, interactive-widget=resizes-content">
4    <title>English Sentence Improver &amp; Vocabulary Builder — KeepReap</title>
5    <meta name="description" content="Improve any sentence into natural English, translate selected text in Chrome or on your Mac, and keep the words you save through spaced review.">
6    <meta name="author" content="KeepReap">
7    <meta name="robots" content="index, follow, max-image-preview:large">
8
9    <!-- KP-80 FOUC prevention. Runs BEFORE the React bundle so the page
10         paints in the user's chosen theme on first frame — without this,
11         a night-theme user sees ~200ms of cool-mono white flash on every
12         reload. The 4 allowed values are duplicated from
13         frontend/src/lib/theme.ts THEMES (can't import — runs pre-bundle).
14         Adding a fifth theme is a deliberate three-file bump:
15         this script + theme.ts THEMES + the :root[data-theme] CSS block. -->
16    
16<script>
17      (function () {
18        try {
19          var t = localStorage.getItem('keepreap.theme');
20          if (t === 'warm-editorial' || t === 'editorial-ink' || t === 'night') {
21            document.documentElement.setAttribute('data-theme', t);
22          }
23        } catch (_) {
24          /* localStorage blocked (private mode, opt-out) — fall through to default theme */
25        }
26      })();
27    </script>
27
28
29    <!-- Favicons: flat-orange bare KR mark — single solid color, transparent
30         (no plate), 12% safe margin. Flat orange reads on both light and dark
31         tab bars. Fixed regardless of which app-icon version is active.
32         favicon.svg is the primary (modern browsers); .ico + PNGs are
33         fallbacks baked from the same mark. Generated by the colored logo
34         sets' generate.py (svg_FAVICON_b) and synced via `yarn brand:use`. -->
35    <link rel="icon" type="image/svg+xml" href="/favicon.svg">
36    <link rel="icon" href="/favicon.ico" sizes="any">
37    <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
38    <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
39    <link rel="icon" type="image/png" sizes="48x48" href="/favicon-48x48.png">
40
41    <!-- iOS / Safari. iOS auto-rounds whatever PNG is supplied; we ship a
42         bare mark on a flat white background so the icon also reads correctly
43         when displayed un-masked (Safari Pinned Tabs, browser favourites
44         bar, share-sheet previews) — no double-rounded squircle. -->
45    <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
46
47    <!-- PWA -->
48    <link rel="manifest" href="/manifest.json">
49    <meta name="theme-color" content="#FFFFFF">
50
51    <!-- prettier-ignore -->
52    
52<script>window.dataLayer=window.dataLayer||[];window.gtag=window.gtag||function(){dataLayer.push(arguments)};(function(){var g='denied';try{if(localStorage.getItem('keepreap.consent')==='granted')g='granted'}catch(e){}gtag('consent','default',{ad_storage:g,ad_user_data:g,ad_personalization:g,analytics_storage:g})})();</script>
52
53    <!-- prettier-ignore -->
54    
54<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-8400728111142523" crossorigin="anonymous"></script>
54
55
56    <!-- Open Graph / Twitter (KP-27).
57         Absolute URLs produced at build time by Vite HTML env substitution.
58         `VITE_WEBAPP_URL` is the single source for the public WebApp origin
59         and is shared with the extension (which uses the same env to pick
60         the sign-in popup target — see extension/src/shared/webapp-origins.ts).
61         Backend has its own equivalent `KEEPREAP_WEB_BASE_URL` (OAuth
62         callback redirect target); both MUST point at the same origin
63         per env. Local dev fallback is http://localhost:5005; crawlers
64         won't reach localhost so unfurl is not exercised there.
65         Wiring rationale + env contract: docs/runbooks/release-checklist.md
66         §"Frontend (Vite — set at build time, not runtime)".
67         Image assets are byte-copied from frontend/src/assets/logos/v2/web/
68         via `yarn brand:sync` (KP-28) into frontend/public/. -->
69    <meta property="og:site_name" content="KeepReap">
70    <meta property="og:locale" content="en_US">
71    <meta property="og:title" content="English Sentence Improver &amp; Vocabulary Builder — KeepReap">
72    <meta property="og:description" content="Improve any sentence into natural English, translate selected text in Chrome or on your Mac, and keep the words you save through spaced review.">
73    <meta property="og:type" content="website">
74    <meta property="og:image" content="https://www.keepreap.com/og-image.png">
75    <meta property="og:image:width" content="1200">
76    <meta property="og:image:height" content="630">
77    <meta property="og:image:alt" content="KeepReap — Say it in natural English, and remember it. Chrome extension, Mac app and web.">
78
79    <meta name="twitter:card" content="summary_large_image">
80    <meta name="twitter:title" content="English Sentence Improver &amp; Vocabulary Builder — KeepReap">
81    <meta name="twitter:description" content="Improve any sentence into natural English, translate selected text in Chrome or on your Mac, and keep the words you save through spaced review.">
82    <meta name="twitter:image" content="https://www.keepreap.com/og-image.png">
83    <meta name="twitter:image:alt" content="KeepReap — Say it in natural English, and remember it. Chrome extension, Mac app and web.">
84
85    
85<script type="application/ld+json">
86      {
87        "@context": "https://schema.org",
88        "@graph": [
89          {
90            "@type": "WebSite",
91            "@id": "https://www.keepreap.com/#website",
92            "url": "https://www.keepreap.com/",
93            "name": "KeepReap",
94            "description": "English sentence improver and vocabulary builder for people who read and write in English as a second language.",
95            "inLanguage": ["en", "ja", "zh-CN", "zh-TW", "ko", "uk", "mk", "fil", "vi"],
96            "publisher": { "@id": "https://www.keepreap.com/#organization" }
97          },
98          {
99            "@type": "Organization",
100            "@id": "https://www.keepreap.com/#organization",
101            "name": "KeepReap",
102            "url": "https://www.keepreap.com/",
103            "logo": "https://www.keepreap.com/logo.svg",
104            "email": "[email protected]",
105            "contactPoint": {
106              "@type": "ContactPoint",
107              "contactType": "customer support",
108              "email": "[email protected]"
109            },
110            "sameAs": [
111              "https://chromewebstore.google.com/detail/oejbdpilpmhphopjidgpfbonoepgngim",
112              "https://github.com/ocxers/keepreap-releases/releases/latest"
113            ]
114          },
115          {
116            "@type": "SoftwareApplication",
117            "@id": "https://www.keepreap.com/#software",
118            "name": "KeepReap",
119            "url": "https://www.keepreap.com/",
120            "description": "Improve any sentence into natural English, translate selected text in Chrome or on your Mac, and keep the words you save through spaced review.",
121            "applicationCategory": "EducationalApplication",
122            "operatingSystem": "Chrome, macOS 12 or later, any modern browser",
123            "image": "https://www.keepreap.com/og-image.png",
124            "screenshot": "https://www.keepreap.com/videos/keepreap-capture.jpg",
125            "installUrl": "https://chromewebstore.google.com/detail/oejbdpilpmhphopjidgpfbonoepgngim",
126            "downloadUrl": "https://github.com/ocxers/keepreap-releases/releases/latest",
127            "featureList": [
128              "Improve a sentence into natural English with a word-level diff",
129              "Translate selected text in place, in Chrome and in any Mac app",
130              "Save words and sentences with the page they came from",
131              "Spaced review, daily practice and weekly checks",
132              "Read English books with look-up on hover",
133              "CEFR A1–C2 level tags on saved words"
134            ],
135            "publisher": { "@id": "https://www.keepreap.com/#organization" },
136            "sameAs": ["https://chromewebstore.google.com/detail/oejbdpilpmhphopjidgpfbonoepgngim"],
137            "offers": {
138              "@type": "AggregateOffer",
139              "priceCurrency": "USD",
140              "lowPrice": "0",
141              "highPrice": "6",
142              "offerCount": 3,
143              "url": "https://www.keepreap.com/#pricing"
144            }
145          }
146        ]
147      }
148    </script>
148
149    
149<script type="module" crossorigin="" src="/assets/index.js"></script>
149
150    <link rel="stylesheet" crossorigin="" href="/assets/index.css">
151  <link rel="canonical" href="https://www.keepreap.com/"><meta property="og:url" content="https://www.keepreap.com/"><link rel="alternate" hreflang="en" data-keepreap-hreflang="true" href="https://www.keepreap.com/"><link rel="alternate" hreflang="x-default" data-keepreap-hreflang="true" href="https://www.keepreap.com/"><link rel="alternate" hreflang="ja" data-keepreap-hreflang="true" href="https://www.keepreap.com/ja"><link rel="alternate" hreflang="zh-CN" data-keepreap-hreflang="true" href="https://www.keepreap.com/zh-cn"><link rel="alternate" hreflang="zh-TW" data-keepreap-hreflang="true" href="https://www.keepreap.com/zh-tw"><link rel="alternate" hreflang="ko" data-keepreap-hreflang="true" href="https://www.keepreap.com/ko"><link rel="alternate" hreflang="uk" data-keepreap-hreflang="true" href="https://www.keepreap.com/uk"><link rel="alternate" hreflang="mk" data-keepreap-hreflang="true" href="https://www.keepreap.com/mk"><link rel="alternate" hreflang="fil" data-keepreap-hreflang="true" href="https://www.keepreap.com/fil"><link rel="alternate" hreflang="vi" data-keepreap-hreflang="true" href="https://www.keepreap.com/vi"></head>
152  <body>
153    <div id="root"><style>
154.kr-diff {
155  margin: 0;
156  white-space: pre-wrap;
157  line-height: 1.5;
158  font-size: 14px;
159}
160.kr-diff-ins {
161  color: var(--brand-success);
162  background: var(--brand-success-surface);
163  text-decoration: none;
164  border-radius: 2px;
165  padding: 0 1px;
166}
167.kr-diff-del {
168  color: var(--brand-danger);
169  background: var(--brand-danger-surface);
170  text-decoration: line-through;
171  border-radius: 2px;
172  padding: 0 1px;
173}
174.kr-diff-eq {
175  color: var(--brand-text-1);
176}
177
178.kr-diff-quote-wrap {
179  padding: 2px 0 2px 10px;
180  border-left: 2px solid var(--brand-border);
181}
182
183.kr-cc-card {
184  position: relative;
185  display: flex;
186  flex-direction: column;
187  background: var(--brand-bg);
188  border: 1px solid var(--brand-border-subtle);
189  border-radius: calc(var(--kr-tc-textarea-radius) + 4px);
190  padding: calc(var(--kr-tc-textarea-padding-y) + 6px) calc(var(--kr-tc-textarea-padding-x) + 6px)
191    calc(var(--kr-tc-textarea-padding-y) + 2px);
192}
193.kr-cc-card:focus-within {
194  border-color: var(--brand-text-1);
195  box-shadow: 0 0 0 3px var(--brand-surface-strong);
196}
197
198.kr-cc-card[data-chrome='none'],
199.kr-cc-card[data-chrome='none']:focus-within {
200  border: none;
201  border-radius: 0;
202  padding: 0;
203  box-shadow: none;
204}
205.kr-cc-card[data-chrome='none'] .kr-cc-input {
206  padding-right: 0;
207}
208
209.kr-cc-input-wrap {
210  position: relative;
211  display: flex;
212  flex-direction: column;
213  flex: 1 1 auto;
214  min-height: var(--kr-tc-textarea-min-h);
215}
216
217.kr-cc-input {
218  display: block;
219  width: 100%;
220  height: 100%;
221  font-family: inherit;
222  font-size: calc(var(--kr-tc-textarea-font-size) + 2px);
223  line-height: 1.65;
224  color: var(--brand-text-1);
225  background: transparent;
226  border: none;
227  border-radius: 0;
228  padding: 0 28px 0 0;
229  resize: none;
230  min-height: var(--kr-tc-textarea-min-h);
231  max-height: var(--kr-tc-textarea-max-h);
232  field-sizing: content;
233  outline: none;
234  box-shadow: none;
235}
236.kr-cc-input::placeholder {
237  color: var(--brand-text-3);
238}
239.kr-cc-input:focus {
240  outline: none;
241  border: none;
242  box-shadow: none;
243}
244
245.kr-cc-input-clear {
246  position: absolute;
247  top: -12px;
248  right: -12px;
249  width: 28px;
250  height: 28px;
251  padding: 0;
252  display: inline-flex;
253  align-items: center;
254  justify-content: center;
255  border: none;
256  background: transparent;
257  color: var(--brand-text-3);
258  border-radius: 999px;
259  cursor: pointer;
260  transition:
261    background-color 120ms,
262    color 120ms;
263}
264.kr-cc-input-clear:hover {
265  background: var(--brand-surface-strong);
266  color: var(--brand-text-1);
267}
268.kr-cc-input-clear:focus-visible {
269  outline: 2px solid var(--brand-primary);
270  outline-offset: 2px;
271}
272
273.kr-cc-divider {
274  height: 1px;
275  background: var(--brand-border-subtle);
276  margin: 14px calc(-1 * (var(--kr-tc-textarea-padding-x) + 6px)) 12px;
277}
278
279.kr-cc-footer {
280  display: flex;
281  flex-wrap: wrap;
282  align-items: center;
283  justify-content: space-between;
284  gap: 12px;
285}
286
287.kr-cc-footer-actions {
288  display: flex;
289  flex-wrap: wrap;
290  align-items: center;
291  gap: var(--kr-tc-action-row-gap);
292}
293
294.kr-cc-footer-separator {
295  display: inline-block;
296  width: 1px;
297  height: 18px;
298  margin: 0 4px;
299  background: var(--brand-border-subtle);
300  flex-shrink: 0;
301}
302
303.kr-cc-action-btn {
304  display: inline-flex;
305  align-items: center;
306  gap: var(--kr-tc-action-row-gap);
307  height: var(--kr-tc-action-pill-h);
308  padding: 0 var(--kr-tc-action-pill-padding-x);
309  border-radius: var(--kr-tc-action-pill-radius);
310  border: 1px solid var(--brand-border);
311  background: var(--brand-bg);
312  color: var(--brand-text-1);
313  font: inherit;
314  font-size: 12px;
315  font-weight: 500;
316  cursor: pointer;
317  white-space: nowrap;
318  transition:
319    background-color 120ms,
320    color 120ms,
321    border-color 120ms;
322}
323.kr-cc-action-btn:hover:not(:disabled) {
324  background: var(--brand-surface-strong);
325}
326.kr-cc-action-btn:focus-visible {
327  outline: 2px solid var(--brand-primary);
328  outline-offset: 2px;
329}
330.kr-cc-action-btn:disabled {
331  opacity: 0.5;
332  cursor: default;
333}
334.kr-cc-action-btn[data-copied='true'],
335.kr-cc-action-btn[data-saved='true'] {
336  color: var(--brand-success);
337  border-color: var(--brand-success);
338}
339
340.kr-cc-action-icon {
341  display: inline-flex;
342  align-items: center;
343  justify-content: center;
344  width: var(--kr-tc-action-icon-size);
345  height: var(--kr-tc-action-icon-size);
346  color: var(--brand-text-1);
347}
348.kr-cc-action-icon svg {
349  width: var(--kr-tc-action-icon-size);
350  height: var(--kr-tc-action-icon-size);
351  display: block;
352}
353.kr-cc-action-btn[data-copied='true'] .kr-cc-action-icon,
354.kr-cc-action-btn[data-saved='true'] .kr-cc-action-icon {
355  color: var(--brand-success);
356}
357
358.kr-cc-lang-menu {
359  position: relative;
360  display: inline-flex;
361  align-items: center;
362  gap: 6px;
363}
364.kr-cc-lang-label {
365  color: var(--brand-text-3);
366  font-size: 11px;
367  white-space: nowrap;
368}
369.kr-cc-lang-trigger {
370  display: inline-flex;
371  align-items: center;
372  gap: 4px;
373  height: 30px;
374  padding: 0 12px;
375  border-radius: 999px;
376  border: 1px solid var(--brand-border);
377  background: var(--brand-bg);
378  color: var(--brand-text-1);
379  font: inherit;
380  font-size: 12px;
381  font-weight: 500;
382  cursor: pointer;
383  white-space: nowrap;
384  box-sizing: border-box;
385  transition:
386    background-color 120ms,
387    border-color 120ms;
388}
389.kr-cc-lang-trigger:hover:not(:disabled) {
390  background: var(--brand-surface-strong);
391}
392.kr-cc-lang-trigger:focus-visible {
393  outline: 2px solid var(--brand-primary);
394  outline-offset: 2px;
395}
396.kr-cc-lang-trigger:disabled {
397  cursor: not-allowed;
398  opacity: 0.5;
399}
400.kr-cc-lang-swap {
401  display: inline-flex;
402  align-items: center;
403  justify-content: center;
404  width: 28px;
405  height: 28px;
406  border-radius: 999px;
407  border: 1px solid var(--brand-border);
408  background: var(--brand-bg);
409  color: var(--brand-text-2);
410  cursor: pointer;
411  box-sizing: border-box;
412  transition:
413    background-color 120ms,
414    color 120ms;
415}
416.kr-cc-lang-swap:hover:not(:disabled) {
417  background: var(--brand-surface-strong);
418  color: var(--brand-text-1);
419}
420.kr-cc-lang-swap:focus-visible {
421  outline: 2px solid var(--brand-primary);
422  outline-offset: 2px;
423}
424.kr-cc-lang-swap:disabled {
425  cursor: not-allowed;
426  opacity: 0.5;
427}
428.kr-cc-lang-popover {
429  position: absolute;
430  top: calc(100% + 6px);
431  right: 0;
432  z-index: 10;
433  width: 200px;
434  padding: 6px;
435  border-radius: 12px;
436  border: 1px solid var(--brand-border-subtle);
437  background: var(--brand-bg);
438  box-sizing: border-box;
439  box-shadow:
440    0 12px 32px rgba(15, 23, 42, 0.16),
441    0 4px 8px rgba(15, 23, 42, 0.1),
442    0 0 0 1px rgba(15, 23, 42, 0.04);
443}
444.kr-cc-lang-filter {
445  display: block;
446  width: 100%;
447  margin-bottom: 6px;
448  border-radius: 999px;
449  border: 1px solid var(--brand-border-subtle);
450  background: var(--brand-bg);
451  color: var(--brand-text-1);
452  padding: 6px 12px;
453  font: inherit;
454  font-size: 12px;
455  outline: none;
456  box-sizing: border-box;
457}
458.kr-cc-lang-filter::placeholder {
459  color: var(--brand-text-3);
460}
461.kr-cc-lang-filter:focus {
462  border-color: var(--brand-primary);
463}
464.kr-cc-lang-scroll {
465  overflow-y: auto;
466  max-height: 15rem;
467  margin-right: -6px;
468  padding-right: 6px;
469  box-sizing: border-box;
470}
471.kr-cc-lang-option {
472  display: block;
473  width: 100%;
474  border: none;
475  background: transparent;
476  color: var(--brand-text-1);
477  border-radius: 999px;
478  padding: 8px 10px;
479  text-align: left;
480  font: inherit;
481  font-size: 12px;
482  cursor: pointer;
483  box-sizing: border-box;
484}
485.kr-cc-lang-option:hover {
486  background: var(--brand-surface-strong);
487}
488.kr-cc-lang-option[data-active='true'] {
489  background: var(--brand-surface-strong);
490  color: var(--brand-primary);
491  font-weight: 600;
492}
493.kr-cc-lang-empty {
494  padding: 6px 10px;
495  color: var(--brand-text-3);
496  font-size: 12px;
497}
498.kr-cc-lang-manage-row {
499  margin-top: 6px;
500  padding-top: 6px;
501  border-top: 1px solid var(--brand-border-subtle);
502}
503.kr-cc-lang-manage {
504  display: block;
505  width: 100%;
506  border: none;
507  background: transparent;
508  border-radius: 999px;
509  padding: 6px 10px;
510  text-align: left;
511  font: inherit;
512  font-size: 11px;
513  font-weight: 500;
514  color: var(--brand-text-3);
515  cursor: pointer;
516  box-sizing: border-box;
517}
518.kr-cc-lang-manage:hover {
519  color: var(--brand-text-1);
520}
521
522.kr-cc-resize-handle {
523  position: absolute;
524  bottom: 0;
525  right: 0;
526  display: inline-flex;
527  align-items: center;
528  justify-content: center;
529  width: 16px;
530  height: 16px;
531  padding: 0;
532  border: none;
533  background: transparent;
534  color: var(--brand-text-3);
535  cursor: ns-resize;
536}
537.kr-cc-resize-handle:hover {
538  color: var(--brand-text-1);
539}
540
541[data-testid='kr-compose-draft-zone'] > .kr-cc-overlay-actions {
542  top: 18px;
543  right: 0;
544}
545[data-testid='kr-compose-draft-zone']:hover > .kr-cc-overlay-actions,
546[data-testid='kr-compose-draft-zone'] .kr-cc-overlay-actions:focus-within {
547  opacity: 1;
548  pointer-events: auto;
549}
550@media (hover: none) {
551  [data-testid='kr-compose-draft-zone'] > .kr-cc-overlay-actions {
552    opacity: 1;
553    pointer-events: auto;
554  }
555}
556
557.kr-cc-draft-zone {
558  position: relative;
559  background: transparent;
560}
561
562.kr-cc-draft-divider {
563  height: 1px;
564  background: color-mix(in srgb, var(--brand-border-subtle) 65%, transparent);
565  margin: 0;
566}
567
568.kr-cc-draft-chip {
569  position: absolute;
570  left: 14px;
571  top: 0;
572  transform: translateY(calc(-50% + 0.5px));
573  background: var(--kr-draft-chip-bg, var(--brand-surface));
574  z-index: 2;
575  display: inline-flex;
576  align-items: center;
577  gap: 6px;
578  border-radius: 999px;
579  padding: 3px 10px 3px 9px;
580  font-size: 10px;
581  color: var(--brand-text-2);
582  text-transform: uppercase;
583  letter-spacing: 0.06em;
584  font-weight: 600;
585  line-height: 1;
586}
587
588.kr-cc-draft-dot {
589  width: 5px;
590  height: 5px;
591  border-radius: 50%;
592  background: var(--brand-accent-teal);
593  animation: kr-cc-draft-pulse 1.8s ease-in-out infinite;
594}
595
596.kr-cc-draft-text {
597  padding-top: 22px;
598  color: var(--brand-text-2);
599  font-size: 14px;
600  line-height: 1.55;
601  font-style: italic;
602  white-space: pre-wrap;
603  max-height: 140px;
604  overflow-y: auto;
605}
606
607.kr-cc-draft-word-ruby {
608  padding-top: 28px;
609  color: var(--brand-text-2);
610  font-size: 22px;
611  line-height: 1.6;
612  font-style: normal;
613  max-height: 140px;
614  overflow-y: auto;
615}
616
617.kr-cc-draft-source-ruby {
618  padding-top: 22px;
619  color: var(--brand-text-2);
620  font-size: 18px;
621  line-height: 1.55;
622  font-style: normal;
623  margin-bottom: 4px;
624}
625
626.kr-cc-draft-source-ruby ruby {
627  margin-right: 1px;
628}
629
630.kr-cc-draft-source-ruby rt {
631  font-size: 10px;
632  color: var(--brand-text-3);
633  font-style: normal;
634  font-weight: 400;
635  letter-spacing: 0.04em;
636  margin-bottom: 2px;
637  font-family: ui-monospace, 'SF Mono', monospace;
638}
639
640.kr-cc-draft-word-ruby ruby {
641  margin-right: 1px;
642}
643
644.kr-cc-draft-word-ruby rt {
645  font-size: 10px;
646  color: var(--brand-text-3);
647  font-style: normal;
648  font-weight: 400;
649  letter-spacing: 0.04em;
650  margin-bottom: 2px;
651  font-family: ui-monospace, 'SF Mono', monospace;
652}
653
654.kr-cc-draft-dismiss {
655  display: inline-flex;
656  align-items: center;
657  justify-content: center;
658  width: 24px;
659  height: 24px;
660  padding: 0;
661  border: none;
662  background: transparent;
663  color: var(--brand-text-3);
664  border-radius: 999px;
665  cursor: pointer;
666  flex-shrink: 0;
667}
668.kr-cc-draft-dismiss:hover {
669  color: var(--brand-text-1);
670  background: var(--brand-surface-strong);
671}
672
673@keyframes kr-cc-draft-pulse {
674  0%, 100% {
675    transform: scale(1);
676    opacity: 1;
677  }
678  50% {
679    transform: scale(1.5);
680    opacity: 0.55;
681  }
682}
683
684.kr-cc-draft-entering {
685  animation: kr-cc-draft-enter 0.36s cubic-bezier(0.16, 1, 0.3, 1) both;
686}
687
688.kr-cc-draft-leaving {
689  animation: kr-cc-draft-leave 0.2s cubic-bezier(0.4, 0, 0.2, 1) both;
690}
691
692@keyframes kr-cc-draft-enter {
693  from {
694    opacity: 0;
695    transform: translateY(8px);
696  }
697  to {
698    opacity: 1;
699    transform: translateY(0);
700  }
701}
702
703@keyframes kr-cc-draft-leave {
704  from {
705    opacity: 1;
706    transform: translateY(0);
707  }
708  to {
709    opacity: 0;
710    transform: translateY(8px);
711  }
712}
713
714@media (prefers-reduced-motion: reduce) {
715  .kr-cc-draft-entering,
716  .kr-cc-draft-leaving {
717    animation-duration: 0.01s;
718  }
719  .kr-cc-draft-dot {
720    animation: none;
721  }
722}
723
724.kr-score {
725  display: inline-flex;
726  align-items: center;
727  gap: 0.35em;
728  border-radius: 999px;
729  font-size: 11px;
730  font-weight: 600;
731  letter-spacing: 0.02em;
732  line-height: 1;
733  padding: 0.45em 0.7em;
734  white-space: nowrap;
735}
736.kr-score-text {
737  min-width: 0;
738  white-space: nowrap;
739}
740.kr-score--weak {
741  color: var(--brand-danger);
742  background: var(--brand-danger-surface);
743}
744.kr-score--fair {
745  color: var(--brand-warning);
746  background: var(--brand-warning-surface);
747}
748.kr-score--good {
749  color: var(--brand-accent-teal);
750  background: var(--brand-surface-2);
751}
752.kr-score--excellent {
753  color: var(--brand-success);
754  background: var(--brand-success-surface);
755}
756
757.win-shell .label-row {
758  position: relative;
759  display: flex;
760  align-items: center;
761  justify-content: space-between;
762  width: 100%;
763  margin: 8px 0 4px;
764  min-height: 22px;
765}
766
767.win-shell .label-row .label {
768  flex: 1 1 auto;
769  min-width: 0;
770}
771
772/* a result column can be narrower than its own caption plus controls, and the
773   controls are what the row is for. this whole group is scoped to the surfaces
774   that carry the in-frame toggle: the translate window predates it and must
775   keep the wrapping it has always had. */
776
777.win-shell[data-toggle='in-frame'] .label-row .label {
778  overflow: hidden;
779  text-overflow: ellipsis;
780  white-space: nowrap;
781}
782
783.win-shell[data-toggle='in-frame'] .win-label-with-score {
784  flex: 0 1 auto;
785  min-width: 0;
786}
787
788.win-shell[data-toggle='in-frame'] .win-label-with-score > :not(.label) {
789  display: inline-flex;
790  flex: 0 1 auto;
791  min-width: 0;
792}
793
794/* truncate inside the badge, never at the group, so nothing an implementation
795   hangs off the group — a tooltip, a focus ring — is at the mercy of this rule.
796   the ellipsis is the point: a hard cut turns "7 / 10" into a different,
797   plausible-looking number. */
798
799.win-shell[data-toggle='in-frame'] .win-label-with-score .kr-score {
800  min-width: 0;
801}
802
803.win-shell[data-toggle='in-frame'] .win-label-with-score .kr-score-text {
804  min-width: 0;
805  overflow: hidden;
806  text-overflow: ellipsis;
807}
808
809.win-shell[data-toggle='in-frame'] .win-label-with-score .kr-score > [aria-hidden='true'] {
810  flex: 0 0 auto;
811}
812
813.win-shell .label-row:first-child {
814  margin-top: 0;
815}
816
817.win-shell .label {
818  font-size: 10px;
819  font-weight: 600;
820  text-transform: uppercase;
821  letter-spacing: 0.04em;
822  color: var(--brand-text-2);
823}
824
825.win-shell .copy-inline {
826  width: 18px;
827  height: 18px;
828  border: none;
829  background: transparent;
830  border-radius: 999px;
831  color: var(--brand-text-3);
832  cursor: pointer;
833  display: inline-flex;
834  align-items: center;
835  justify-content: center;
836  padding: 0;
837}
838
839.win-shell .copy-inline:hover {
840  background: var(--brand-surface-strong);
841  color: var(--brand-text-1);
842}
843
844.win-shell .copy-inline svg {
845  width: 12px;
846  height: 12px;
847}
848
849.win-shell .copy-inline[data-copied='true'] {
850  color: var(--brand-success);
851}
852
853.win-shell .speak-inline {
854  width: 18px;
855  height: 18px;
856  border: none;
857  background: transparent;
858  border-radius: 999px;
859  color: var(--brand-text-3);
860  cursor: pointer;
861  display: inline-flex;
862  align-items: center;
863  justify-content: center;
864  padding: 0;
865}
866
867.win-shell .speak-inline:hover {
868  background: var(--brand-surface-strong);
869  color: var(--brand-text-1);
870}
871
872.win-shell .speak-inline svg {
873  width: 12px;
874  height: 12px;
875}
876
877.win-shell .speak-inline[data-active='true'] {
878  color: var(--brand-primary);
879}
880
881.win-shell .kr-cc-overlay-actions {
882  position: absolute;
883  top: var(--kr-cc-block-padding-y);
884  right: var(--kr-cc-block-padding-x);
885  display: inline-flex;
886  align-items: center;
887  gap: 4px;
888  z-index: 2;
889  opacity: 0;
890  pointer-events: none;
891  transition: opacity 120ms ease;
892  padding: 2px 6px;
893  border-radius: 999px;
894  background: color-mix(in srgb, var(--brand-canvas, var(--brand-bg)) 78%, transparent);
895  border: 1px solid color-mix(in srgb, var(--brand-border) 40%, transparent);
896  backdrop-filter: blur(8px);
897  -webkit-backdrop-filter: blur(8px);
898  box-shadow: 0 1px 4px color-mix(in srgb, var(--brand-text-1) 7%, transparent);
899}
900
901.win-shell .kr-cc-overlay-actions .copy-inline:hover,
902.win-shell .kr-cc-overlay-actions .speak-inline:hover {
903  background: color-mix(in srgb, var(--brand-border) 72%, var(--brand-canvas, var(--brand-bg)) 28%);
904  color: var(--brand-text-1);
905}
906
907@media (hover: none) {
908  .win-shell .kr-cc-overlay-actions {
909    opacity: 1;
910    pointer-events: auto;
911  }
912}
913
914.win-shell .kr-tip {
915  position: relative;
916  display: inline-flex;
917  align-items: center;
918}
919
920.win-shell .kr-tip-content {
921  position: absolute;
922  top: calc(100% + 6px);
923  left: 50%;
924  transform: translateX(-50%) translateY(-2px);
925  z-index: 10;
926  max-width: 220px;
927  width: max-content;
928  padding: 6px 8px;
929  border-radius: 8px;
930  background: var(--brand-surface-dark-elevated, #2c2c2e);
931  color: #fff;
932  font-size: 11px;
933  line-height: 1.4;
934  white-space: pre-wrap;
935  text-align: left;
936  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.28);
937  opacity: 0;
938  pointer-events: none;
939  transition:
940    opacity 120ms ease 200ms,
941    transform 120ms ease 200ms;
942}
943
944.win-shell .kr-tip:hover > .kr-tip-content {
945  opacity: 1;
946  transform: translateX(-50%) translateY(0);
947}
948
949.win-shell .kr-tip:has(:focus-visible) > .kr-tip-content {
950  opacity: 1;
951  transform: translateX(-50%) translateY(0);
952}
953
954.win-shell .error {
955  color: var(--brand-danger);
956  background: var(--brand-danger-surface);
957  padding: 8px;
958  border-radius: 4px;
959}
960
961.win-shell .error-block {
962  display: flex;
963  flex-direction: column;
964  align-items: flex-start;
965  gap: 8px;
966}
967
968.win-shell .header-quota {
969  border: 1px solid var(--brand-border);
970  background: var(--brand-surface);
971  color: var(--brand-text-2);
972  font-size: 11px;
973  font-weight: 600;
974  line-height: 1;
975  padding: 4px 8px;
976  border-radius: 999px;
977  cursor: pointer;
978  white-space: nowrap;
979}
980
981.win-shell .header-quota:hover {
982  background: var(--brand-surface-strong);
983  color: var(--brand-text-1);
984}
985
986.win-shell .header-quota[data-warn='soft'] {
987  color: var(--brand-warning, #b25000);
988  border-color: var(--brand-warning, #b25000);
989}
990
991.win-shell .header-quota[data-warn='critical'] {
992  color: var(--brand-danger);
993  border-color: var(--brand-danger);
994}
995
996.win-shell .fallback {
997  display: flex;
998  align-items: center;
999  justify-content: space-between;
1000  gap: 8px;
1001  background: var(--brand-warning-surface);
1002  color: var(--brand-warning);
1003  padding: 6px 8px;
1004  border-radius: 4px;
1005  margin-bottom: 8px;
1006  font-size: 11px;
1007}
1008
1009.win-shell .fallback-login-btn {
1010  flex-shrink: 0;
1011  height: 22px;
1012  padding: 0 10px;
1013  border-radius: 999px;
1014  border: 1px solid var(--brand-warning);
1015  background: transparent;
1016  color: var(--brand-warning);
1017  font-size: 11px;
1018  font-weight: 600;
1019  cursor: pointer;
1020  font-family: inherit;
1021  white-space: nowrap;
1022}
1023
1024.win-shell .fallback-login-btn:hover {
1025  background: var(--brand-warning);
1026  color: white;
1027}
1028
1029.win-shell .error-login-cta {
1030  align-self: flex-start;
1031}
1032
1033.win-shell .save-failed {
1034  color: var(--brand-danger);
1035  font-size: 12px;
1036  padding: 8px 0 0;
1037}
1038
1039.win-shell .kr-loading-state {
1040  display: flex;
1041  flex-direction: row;
1042  align-items: center;
1043  justify-content: flex-start;
1044  align-self: stretch;
1045  padding: 4px 0 8px;
1046  gap: 10px;
1047}
1048
1049.win-shell .kr-loading-label {
1050  font-size: 12px;
1051  color: var(--brand-text-2);
1052}
1053
1054.win-shell .kr-spinner {
1055  display: inline-block;
1056  border-radius: 50%;
1057  border: 2px solid var(--brand-border);
1058  border-top-color: var(--brand-text-1);
1059  animation: kr-spin 0.7s linear infinite;
1060  flex-shrink: 0;
1061}
1062
1063.win-shell .kr-spinner-section {
1064  width: 16px;
1065  height: 16px;
1066}
1067
1068.win-shell .kr-diff-quote-wrap {
1069  margin: 6px 0;
1070}
1071
1072.win-shell {
1073  --win-bar-clearance: 62px;
1074  container: win-shell / inline-size;
1075  position: relative;
1076  display: flex;
1077  flex-direction: column;
1078  height: 100%;
1079  min-height: 0;
1080  color: var(--brand-text-1);
1081  font-size: 13px;
1082}
1083
1084/* ---------- body: two independent scroll regions ---------- */
1085
1086.win-body {
1087  position: relative;
1088  flex: 1 1 auto;
1089  min-height: 0;
1090  min-width: 0;
1091  display: flex;
1092  flex-direction: column;
1093}
1094
1095.win-body[data-layout='h'][data-split='true'] {
1096  flex-direction: row;
1097}
1098
1099.win-pad {
1100  padding: 0 18px;
1101}
1102
1103.win-shell .win-source {
1104  background: var(--brand-canvas, var(--brand-bg));
1105}
1106
1107.win-source {
1108  flex: 0 0 auto;
1109  position: relative;
1110  display: flex;
1111  flex-direction: column;
1112  min-height: 0;
1113  min-width: 0;
1114}
1115
1116.win-source-scroll {
1117  flex: 1 1 auto;
1118  min-height: 0;
1119  overflow-y: auto;
1120  padding: 12px 0 20px;
1121}
1122
1123.win-body[data-split='false'] .win-source-scroll {
1124  max-height: 232px;
1125}
1126
1127.win-source .kr-cc-input {
1128  height: auto;
1129  min-height: 52px;
1130  max-height: none;
1131  padding: 0;
1132  font-size: 16px;
1133  line-height: 1.6;
1134  field-sizing: content;
1135}
1136
1137.win-source-foot {
1138  flex: 0 0 auto;
1139  padding-top: 10px;
1140  padding-bottom: 10px;
1141}
1142
1143.win-source-foot[data-empty='true'] {
1144  display: none;
1145}
1146
1147.win-source-foot .kr-cc-draft-chip {
1148  left: 18px;
1149}
1150
1151.win-source-foot .kr-cc-draft-chip[data-kind='notice'] {
1152  background: var(--brand-warning-surface);
1153  color: var(--brand-warning);
1154}
1155
1156/* unsplit with no result yet: the result column used to hold every leftover
1157   pixel while the input and the live draft sat under fixed px caps, so a long
1158   draft was clipped above a band of empty canvas. Collapse the empty column and
1159   let the source card own the height instead. COMPOSER_DRAFT_PREVIEW_CSS keeps
1160   its 140px draft cap as the default for card surfaces that are not a workbench. */
1161
1162.win-body[data-split='false'][data-result='none'] > .win-source {
1163  flex: 1 1 auto;
1164}
1165
1166.win-body[data-split='false'][data-result='none'] .win-source-scroll {
1167  flex: 0 1 auto;
1168  max-height: none;
1169}
1170
1171/* the draft is the thing being read, so it claims what it needs first, up to
1172   most of the card, and the input takes the remainder and scrolls. Leftover
1173   height inside a textarea reads as room to keep typing; leftover height under
1174   a clipped draft is the bug this rule exists to remove. */
1175
1176.win-body[data-split='false'][data-result='none'] .win-source-foot {
1177  flex: 0 0 auto;
1178  min-height: 0;
1179  max-height: 60%;
1180  display: flex;
1181  flex-direction: column;
1182}
1183
1184.win-body[data-split='false'][data-result='none'] .kr-cc-draft-zone {
1185  flex: 1 1 auto;
1186  min-height: 0;
1187  display: flex;
1188  flex-direction: column;
1189}
1190
1191.win-body[data-split='false'][data-result='none'] .kr-cc-draft-text,
1192.win-body[data-split='false'][data-result='none'] .kr-cc-draft-word-ruby {
1193  flex: 1 1 auto;
1194  min-height: 0;
1195  max-height: none;
1196}
1197
1198.win-body[data-split='false'][data-result='none'] > .win-result-scroll {
1199  flex: 0 0 auto;
1200  padding: 0;
1201}
1202
1203/* nothing sits below the card now, so whichever pane ends it pads itself by the
1204   bar's height: the draft when there is one, the input when there is not. The
1205   bar then overlays live text and the last line clears it at the end of the
1206   scroll, instead of the card stopping short of a reserved band. */
1207
1208.win-body[data-split='false'][data-result='none'] .kr-cc-draft-text,
1209.win-body[data-split='false'][data-result='none'] .kr-cc-draft-word-ruby {
1210  padding-bottom: var(--win-bar-clearance);
1211}
1212
1213.win-body[data-split='false'][data-result='none']
1214  .win-source:has(> .win-source-foot[data-empty='true'])
1215  .win-source-scroll {
1216  padding-bottom: var(--win-bar-clearance);
1217}
1218
1219.win-source-foot {
1220  position: relative;
1221}
1222
1223.win-draft-resize.kr-resize-divider[data-orientation='horizontal'] {
1224  position: absolute;
1225  top: 6px;
1226  left: 0;
1227  right: 0;
1228  margin: 0;
1229  z-index: 1;
1230}
1231
1232.win-source-foot:has(> .win-draft-resize) .kr-cc-draft-divider {
1233  visibility: hidden;
1234}
1235
1236.win-body[data-split='false'][data-result='none']
1237  .win-source:has(> .win-source-scroll[data-sized='true'])
1238  > .win-source-foot {
1239  flex: 0 1 auto;
1240  max-height: none;
1241}
1242
1243.win-source-foot .kr-cc-draft-chip[data-kind='notice'] .kr-cc-draft-dot {
1244  background: var(--brand-warning);
1245  animation: none;
1246}
1247
1248.win-source-foot .kr-cc-draft-text,
1249.win-source-foot .kr-cc-draft-word-ruby,
1250.win-source-foot .kr-cc-draft-source-ruby {
1251  padding-left: 18px;
1252  padding-right: 74px;
1253}
1254
1255.win-counter {
1256  position: absolute;
1257  right: 18px;
1258  bottom: 7px;
1259  padding-left: 20px;
1260  font-size: 11px;
1261  color: var(--brand-text-3);
1262  font-variant-numeric: tabular-nums;
1263  background: linear-gradient(to right, transparent, var(--brand-canvas, var(--brand-bg)) 16px);
1264  pointer-events: none;
1265}
1266
1267.win-counter[data-over='true'] {
1268  color: var(--brand-danger);
1269  font-weight: 600;
1270}
1271
1272/* it floats over the first line, so in a narrow pane it would sit on the text —
1273   it appears when the pointer comes for it, the way the result blocks' own
1274   copy/speak already do, and fades the text under it while it is there.
1275
1276   the reveal is keyed on the input's own scrollport, never on the source card:
1277   unsplit with no result the card stretches to the whole shell, so a hover on
1278   the card put the cluster up from anywhere in the workbench. the cluster is a
1279   sibling of the scrollport rather than a descendant, so reaching for it ends
1280   the hover that revealed it — it holds itself open on the way in. */
1281
1282.win-input-acts {
1283  position: absolute;
1284  top: 6px;
1285  right: 12px;
1286  z-index: 3;
1287  display: none;
1288  align-items: center;
1289  gap: 1px;
1290  padding-left: 26px;
1291  background: linear-gradient(to right, transparent, var(--brand-canvas, var(--brand-bg)) 22px);
1292  opacity: 0;
1293  transition: opacity 120ms ease;
1294}
1295
1296.win-input-acts[data-show='true'] {
1297  display: inline-flex;
1298}
1299
1300.win-source:has(> .win-source-scroll:hover) .win-input-acts[data-show='true'],
1301.win-input-acts[data-show='true']:hover,
1302.win-input-acts[data-show='true']:focus-within {
1303  opacity: 1;
1304}
1305
1306@media (hover: none) {
1307  .win-input-acts[data-show='true'] {
1308    opacity: 1;
1309  }
1310
1311  .win-source-scroll > .win-pad {
1312    padding-top: 34px;
1313  }
1314
1315  .win-float-bar .kr-tip-content {
1316    display: none;
1317  }
1318}
1319
1320.win-shell[data-typing='true'] .win-input-acts[data-show='true']:not(:focus-within),
1321.win-shell[data-typing='true'] .win-layout-toggle:not(:focus-within) {
1322  opacity: 0;
1323  pointer-events: none;
1324}
1325
1326.win-shell[data-typing='true'] .win-layout-toggle:not(:focus-within) button {
1327  pointer-events: none;
1328}
1329
1330/* ---------- divider: the line itself is the handle ---------- */
1331
1332.win-divider {
1333  flex: 0 0 auto;
1334  position: relative;
1335  height: 13px;
1336  padding: 0;
1337  border: none;
1338  background: transparent;
1339  cursor: row-resize;
1340  touch-action: none;
1341}
1342
1343.win-body[data-split='false'] .win-divider {
1344  display: none;
1345}
1346
1347.win-divider-line {
1348  position: absolute;
1349  left: 0;
1350  right: 0;
1351  top: 50%;
1352  height: 1px;
1353  margin-top: -0.5px;
1354  background: var(--brand-border-subtle);
1355  transition: opacity 180ms ease;
1356}
1357
1358.win-divider-grip {
1359  position: absolute;
1360  top: 50%;
1361  left: 50%;
1362  width: 32px;
1363  height: 3px;
1364  margin-top: -1.5px;
1365  border-radius: 999px;
1366  background: var(--brand-border);
1367  transform: translateX(-50%);
1368  transition:
1369    width 240ms cubic-bezier(0.16, 1, 0.3, 1),
1370    border-radius 240ms cubic-bezier(0.16, 1, 0.3, 1),
1371    background-color 180ms ease;
1372}
1373
1374.win-divider:hover .win-divider-grip,
1375.win-divider:focus-visible .win-divider-grip,
1376.win-divider[data-dragging='true'] .win-divider-grip {
1377  width: 100%;
1378  border-radius: 0;
1379}
1380
1381.win-divider:hover .win-divider-line,
1382.win-divider:focus-visible .win-divider-line,
1383.win-divider[data-dragging='true'] .win-divider-line {
1384  opacity: 0;
1385}
1386
1387.win-divider:hover .win-divider-grip,
1388.win-divider:focus-visible .win-divider-grip {
1389  background: var(--brand-text-3);
1390}
1391
1392.win-divider[data-dragging='true'] .win-divider-grip {
1393  background: var(--brand-text-1);
1394}
1395
1396.win-body[data-layout='h'][data-split='true'] .win-divider {
1397  width: 13px;
1398  height: auto;
1399  cursor: col-resize;
1400}
1401
1402.win-body[data-layout='h'][data-split='true'] .win-divider-line {
1403  left: 50%;
1404  right: auto;
1405  top: 0;
1406  bottom: 0;
1407  width: 1px;
1408  height: auto;
1409  margin-top: 0;
1410  margin-left: -0.5px;
1411}
1412
1413.win-body[data-layout='h'][data-split='true'] .win-divider-grip {
1414  top: 50%;
1415  left: 50%;
1416  width: 3px;
1417  height: 32px;
1418  margin-top: -16px;
1419  margin-left: -1.5px;
1420  transform: none;
1421  transition:
1422    height 240ms cubic-bezier(0.16, 1, 0.3, 1),
1423    border-radius 240ms cubic-bezier(0.16, 1, 0.3, 1),
1424    background-color 180ms ease;
1425}
1426
1427.win-body[data-layout='h'][data-split='true'] .win-divider:hover .win-divider-grip,
1428.win-body[data-layout='h'][data-split='true'] .win-divider:focus-visible .win-divider-grip,
1429.win-body[data-layout='h'][data-split='true'] .win-divider[data-dragging='true'] .win-divider-grip {
1430  top: 0;
1431  width: 3px;
1432  height: 100%;
1433  margin-top: 0;
1434}
1435
1436/* the floating bar sits at the bottom of the input pane in side-by-side, so the
1437   pane's own bottom furniture has to clear it */
1438
1439.win-body[data-layout='h'][data-split='true'] .win-source {
1440  padding-bottom: 62px;
1441}
1442
1443.win-body[data-layout='h'][data-split='true'] .win-counter {
1444  bottom: 69px;
1445}
1446
1447/* the divider's 13px band is a drag target, not content, so the edges beside it
1448   pull in by half of it — otherwise everything against the divider reads 6px
1449   further out than everything against the window */
1450
1451.win-body[data-layout='h'][data-split='true'] .win-input-acts {
1452  right: 6px;
1453}
1454
1455.win-body[data-layout='h'][data-split='true'] .win-counter {
1456  right: 12px;
1457}
1458
1459.win-body[data-layout='h'][data-split='true'] .win-source-foot .kr-cc-draft-text,
1460.win-body[data-layout='h'][data-split='true'] .win-source-foot .kr-cc-draft-wor
1460d-ruby,
1461.win-body[data-layout='h'][data-split='true'] .win-source-foot .kr-cc-draft-source-ruby {
1462  padding-right: 68px;
1463}
1464
1465.win-body[data-layout='h'][data-split='true'] .win-result-scroll > .win-pad {
1466  padding-left: 12px;
1467}
1468
1469/* the bar only clears the result column while it is centred on the input pane;
1470   once it falls back to the window it covers both, so the padding comes back */
1471
1472.win-body[data-layout='h'][data-split='true'] .win-result-scroll {
1473  padding-top: 12px;
1474}
1475
1476/* ---------- result region ---------- */
1477
1478.win-result-scroll {
1479  flex: 1 1 auto;
1480  min-height: 0;
1481  min-width: 0;
1482  overflow-y: auto;
1483  padding: 14px 0;
1484  display: flex;
1485  flex-direction: column;
1486}
1487
1488/* bottom clearance pads the content rather than shortening the scrollport, so
1489   the bar overlays live text instead of sitting in a reserved dead band, and the
1490   last line still clears it at the very end of the scroll. Same shape macapp
1491   uses for its kept document (.win-kept-pad). */
1492
1493.win-body[data-bar='window']:not([data-result='none'])
1494  .win-result-scroll:not([data-empty='true'])
1495  > .win-pad {
1496  padding-bottom: var(--win-bar-clearance);
1497}
1498
1499.win-result-scroll > .win-pad {
1500  flex: 1 0 auto;
1501  display: flex;
1502  flex-direction: column;
1503}
1504
1505.win-source-scroll,
1506.win-result-scroll {
1507  scrollbar-width: thin;
1508  scrollbar-color: color-mix(in srgb, var(--brand-text-1) 22%, transparent) transparent;
1509}
1510
1511.win-surface {
1512  flex: 1 0 auto;
1513  display: flex;
1514  flex-direction: column;
1515  min-height: 0;
1516}
1517
1518.win-result-body {
1519  flex: 0 0 auto;
1520}
1521
1522.win-label-actions {
1523  display: inline-flex;
1524  align-items: center;
1525  gap: 2px;
1526  flex: 0 0 auto;
1527  margin-right: -3px;
1528}
1529
1530.win-shell .win-result-scroll .label-row {
1531  margin: 0 0 6px;
1532  min-height: 24px;
1533}
1534
1535.win-result-dismiss {
1536  width: 18px;
1537  height: 18px;
1538  padding: 0;
1539  border: none;
1540  border-radius: 999px;
1541  background: transparent;
1542  color: var(--brand-text-3);
1543  cursor: pointer;
1544  display: inline-flex;
1545  align-items: center;
1546  justify-content: center;
1547}
1548
1549.win-result-dismiss:hover {
1550  background: var(--brand-surface-strong);
1551  color: var(--brand-text-1);
1552}
1553
1554.win-result-dismiss svg {
1555  width: 12px;
1556  height: 12px;
1557}
1558
1559/* the window is a workbench, not a 279pt bubble — the result blocks get room */
1560
1561.win-shell .win-result-scroll .win-block {
1562  margin: 0;
1563  padding: 0;
1564  background: transparent;
1565  border: none;
1566  border-radius: 0;
1567  white-space: pre-wrap;
1568}
1569
1570.win-shell .win-result-scroll .win-block + .label-row {
1571  margin-top: 18px;
1572}
1573
1574.win-shell .win-result-scroll .translation {
1575  font-size: 16px;
1576  line-height: 1.62;
1577  color: var(--brand-text-1);
1578}
1579
1580.win-shell .win-result-scroll .original {
1581  font-size: 14px;
1582  line-height: 1.6;
1583  color: var(--brand-text-2);
1584}
1585
1586.win-shell .win-result-scroll .improved {
1587  font-size: 16px;
1588  line-height: 1.62;
1589  color: var(--brand-text-1);
1590}
1591
1592.win-shell .win-result-scroll .alt {
1593  font-size: 14px;
1594  line-height: 1.6;
1595  color: var(--brand-body);
1596}
1597
1598.win-shell .win-result-scroll .note {
1599  font-size: 12.5px;
1600  line-height: 1.65;
1601  color: var(--brand-text-2);
1602}
1603
1604.win-shell .win-result-scroll .meanings {
1605  display: flex;
1606  flex-direction: column;
1607  gap: 7px;
1608  list-style: none;
1609  padding-left: 0;
1610  white-space: normal;
1611}
1612
1613.win-shell .win-result-scroll .meanings li {
1614  margin: 0;
1615  font-size: 13px;
1616  line-height: 1.55;
1617  color: var(--brand-body);
1618}
1619
1620.win-shell .win-result-scroll .meanings .term {
1621  font-weight: 600;
1622  color: var(--brand-text-1);
1623}
1624
1625.win-result-scroll .kr-loading-state {
1626  flex: 1 0 auto;
1627  flex-direction: column;
1628  align-items: center;
1629  justify-content: center;
1630  gap: 12px;
1631}
1632
1633.win-result-cta-group {
1634  display: inline-flex;
1635  align-items: center;
1636  gap: 6px;
1637  flex-shrink: 0;
1638}
1639
1640/* ---------- empty state ---------- */
1641
1642.win-empty {
1643  flex: 1 0 auto;
1644  display: flex;
1645  flex-direction: column;
1646  align-items: center;
1647  justify-content: center;
1648  gap: 14px;
1649  color: var(--brand-text-3);
1650  text-align: center;
1651}
1652
1653/* stacked and empty, the placeholder belongs to the whole content area rather
1654   than to the result region under it — minus the strip the floating bar covers */
1655
1656.win-result-scroll[data-empty='true'] {
1657  overflow: visible;
1658}
1659
1660.win-body[data-split='false'] .win-result-scroll[data-empty='true'] .win-empty {
1661  position: absolute;
1662  left: 0;
1663  right: 0;
1664  top: 0;
1665  bottom: 58px;
1666  pointer-events: none;
1667}
1668
1669/* the placeholder is laid over the whole content area, composer included, so it
1670   has to let the pointer through — otherwise the input cannot be clicked while
1671   it is up. its own controls opt back in. */
1672
1673.win-body[data-split='false'] .win-result-scroll[data-empty='true'] .win-empty button {
1674  pointer-events: auto;
1675}
1676
1677.win-empty-mark {
1678  width: 40px;
1679  height: 40px;
1680  border-radius: 999px;
1681  background: var(--brand-surface);
1682  display: inline-flex;
1683  align-items: center;
1684  justify-content: center;
1685  color: var(--brand-text-3);
1686}
1687
1688.win-empty-mark svg {
1689  width: 21px;
1690  height: 21px;
1691  display: block;
1692}
1693
1694.win-empty-title {
1695  font-size: 13px;
1696  color: var(--brand-text-2);
1697}
1698
1699.win-keys {
1700  display: grid;
1701  grid-template-columns: auto auto;
1702  align-items: center;
1703  justify-content: center;
1704  gap: 7px 0;
1705  font-size: 11px;
1706}
1707
1708.win-keys-hint {
1709  margin-top: -7px;
1710  font-size: 11px;
1711  color: var(--brand-text-3);
1712  opacity: 0.75;
1713}
1714
1715.win-key-combo {
1716  display: inline-flex;
1717  align-items: center;
1718  justify-content: flex-end;
1719  padding-right: 5px;
1720}
1721
1722.win-key-combo-caps {
1723  display: inline-flex;
1724  align-items: center;
1725  gap: 4px;
1726}
1727
1728button.win-key-combo {
1729  display: inline-grid;
1730  align-items: center;
1731  border: none;
1732  background: transparent;
1733  padding: 0 5px 0 0;
1734  font: inherit;
1735  font-size: 11px;
1736  cursor: pointer;
1737}
1738
1739button.win-key-combo > * {
1740  grid-area: 1 / 1;
1741  justify-self: end;
1742}
1743
1744button.win-key-combo > .win-kbd-recording,
1745button.win-key-combo > .win-kbd-saving {
1746  visibility: hidden;
1747}
1748
1749button.win-key-combo[data-recording='true'] > .win-kbd-recording,
1750button.win-key-combo[data-saving='true'] > .win-kbd-saving {
1751  visibility: visible;
1752}
1753
1754button.win-key-combo[data-recording='true'] > .win-key-combo-caps,
1755button.win-key-combo[data-saving='true'] > .win-key-combo-caps {
1756  visibility: hidden;
1757}
1758
1759button.win-key-combo[data-hover='true'] .win-kbd {
1760  border-color: var(--brand-border);
1761  color: var(--brand-text-1);
1762}
1763
1764button.win-key-combo:focus-visible {
1765  outline: 2px solid var(--brand-primary);
1766  outline-offset: 3px;
1767  border-radius: 7px;
1768}
1769
1770.win-kbd-recording {
1771  border-style: dashed;
1772  border-color: var(--brand-primary);
1773  color: var(--brand-text-1);
1774  white-space: nowrap;
1775}
1776
1777.win-kbd-saving {
1778  display: inline-flex;
1779  align-items: center;
1780  gap: 5px;
1781  color: var(--brand-text-1);
1782  white-space: nowrap;
1783}
1784
1785.win-shell .kr-spinner-kbd {
1786  width: 9px;
1787  height: 9px;
1788  border-width: 1.5px;
1789}
1790
1791button.win-key-combo[data-error='true'] .win-kbd {
1792  border-color: var(--brand-danger);
1793}
1794
1795.win-key-label {
1796  color: var(--brand-text-3);
1797  text-align: left;
1798  padding-left: 5px;
1799}
1800
1801.win-key-label[data-rebindable='true'] {
1802  cursor: pointer;
1803}
1804
1805.win-key-label[data-hover='true'] {
1806  color: var(--brand-text-1);
1807}
1808
1809.win-key-label[data-error='true'] {
1810  color: var(--brand-danger);
1811}
1812
1813.win-kbd {
1814  font-family: inherit;
1815  font-size: 10px;
1816  font-weight: 600;
1817  padding: 2px 6px;
1818  border-radius: 5px;
1819  background: var(--brand-surface);
1820  border: 1px solid var(--brand-border-subtle);
1821  color: var(--brand-text-2);
1822}
1823
1824/* ---------- floating action bar ---------- */
1825
1826.win-float-bar {
1827  position: absolute;
1828  left: 50%;
1829  bottom: 14px;
1830  transform: translateX(-50%);
1831  display: inline-flex;
1832  align-items: center;
1833  gap: 6px;
1834  padding: 6px;
1835  border-radius: 999px;
1836  background: color-mix(in srgb, var(--brand-canvas, var(--brand-bg)) 80%, transparent);
1837  backdrop-filter: saturate(180%) blur(20px);
1838  -webkit-backdrop-filter: saturate(180%) blur(20px);
1839  box-shadow:
1840    0 10px 28px rgba(15, 23, 42, 0.16),
1841    0 2px 6px rgba(15, 23, 42, 0.08),
1842    0 0 0 1px rgba(15, 23, 42, 0.06);
1843  white-space: nowrap;
1844  z-index: 4;
1845}
1846
1847/* titlebar controls sit against the right edge, so a tooltip centred on the
1848   button hangs off the window; pin it to the same edge instead */
1849
1850/* the bar floats over the bottom edge, so its tooltips have to open upward or
1851   they are clipped by the window */
1852
1853.win-float-bar .kr-tip-content {
1854  top: auto;
1855  bottom: calc(100% + 6px);
1856  transform: translateX(-50%) translateY(2px);
1857}
1858
1859.win-float-bar .kr-tip:hover > .kr-tip-content,
1860.win-float-bar .kr-tip:has(:focus-visible) > .kr-tip-content {
1861  transform: translateX(-50%) translateY(0);
1862}
1863
1864.win-act-row {
1865  display: inline-flex;
1866  align-items: center;
1867  gap: 6px;
1868}
1869
1870.win-act-sep {
1871  width: 1px;
1872  height: 18px;
1873  margin: 0 2px;
1874  background: var(--brand-border-subtle);
1875  flex-shrink: 0;
1876}
1877
1878.win-act {
1879  display: inline-flex;
1880  align-items: center;
1881  gap: 6px;
1882  height: 32px;
1883  min-width: 0;
1884  padding: 0 13px 0 11px;
1885  border-radius: 999px;
1886  border: 1px solid transparent;
1887  background: transparent;
1888  color: var(--brand-text-2);
1889  font: inherit;
1890  font-size: 12px;
1891  font-weight: 500;
1892  white-space: nowrap;
1893  cursor: pointer;
1894}
1895
1896.win-act:hover:not(:disabled) {
1897  background: var(--brand-surface);
1898  color: var(--brand-text-1);
1899}
1900
1901.win-act:disabled {
1902  opacity: 0.34;
1903  cursor: default;
1904}
1905
1906.win-act-ico {
1907  display: inline-flex;
1908  align-items: center;
1909}
1910
1911/* the bar falls back to the icons its buttons already carry when the space it
1912   floats over cannot hold it labelled — a narrow window, or a narrow input pane
1913   side by side. usePanelLayout owns that judgement because the pane half needs
1914   the bar's own measured width */
1915
1916.win-float-bar[data-compact='true'] .win-act[data-labelled='true'] {
1917  width: 32px;
1918  min-width: 32px;
1919  padding: 0;
1920  gap: 0;
1921  justify-content: center;
1922}
1923
1924.win-float-bar[data-compact='true'] .win-act[data-labelled='true'] > span:not(.win-act-ico) {
1925  display: none;
1926}
1927
1928.win-act-ico svg {
1929  width: 15px;
1930  height: 15px;
1931  display: block;
1932}
1933
1934.win-act[data-loading='true'] .win-act-ico svg {
1935  animation: kr-spin 0.8s linear infinite;
1936}
1937
1938.win-act[data-selected='true'],
1939.win-act[data-selected='true']:hover {
1940  background: var(--brand-surface-strong);
1941  color: var(--brand-primary);
1942  font-weight: 600;
1943}
1944
1945.win-act[data-compact='true'] {
1946  width: 26px;
1947  min-width: 26px;
1948  height: 26px;
1949  padding: 0;
1950  gap: 0;
1951  justify-content: center;
1952  color: var(--brand-text-3);
1953}
1954
1955.win-act[data-compact='true'] .win-act-ico svg {
1956  width: 13px;
1957  height: 13px;
1958}
1959
1960.win-act[data-done='true'],
1961.win-act[data-done='true']:hover {
1962  color: var(--brand-success);
1963}
1964
1965.win-act[data-active='true'],
1966.win-act[data-active='true']:hover {
1967  background: var(--brand-surface-strong);
1968  color: var(--brand-primary);
1969}
1970
1971.win-shell button:focus-visible,
1972.win-shell [role='separator']:focus-visible {
1973  outline: 2px solid var(--brand-primary);
1974  outline-offset: 2px;
1975}
1976
1977/* ---------- language icon: one trigger, one two-column popover ---------- */
1978
1979.win-lang {
1980  position: relative;
1981  display: inline-flex;
1982  align-items: center;
1983}
1984
1985.win-lang-trigger {
1986  width: 32px;
1987  min-width: 32px;
1988  height: 32px;
1989  padding: 0;
1990  border: 1px solid transparent;
1991  border-radius: 999px;
1992  background: transparent;
1993  color: var(--brand-text-2);
1994  display: inline-flex;
1995  align-items: center;
1996  justify-content: center;
1997  cursor: pointer;
1998}
1999
2000.win-lang-trigger:hover {
2001  background: var(--brand-surface);
2002  color: var(--brand-text-1);
2003}
2004
2005.win-lang-trigger svg {
2006  width: 15px;
2007  height: 15px;
2008  display: block;
2009}
2010
2011.win-lang-swap {
2012  width: 26px;
2013  min-width: 26px;
2014  height: 26px;
2015  padding: 0;
2016  border: none;
2017  border-radius: 999px;
2018  background: transparent;
2019  color: var(--brand-text-3);
2020  display: inline-flex;
2021  align-items: center;
2022  justify-content: center;
2023  cursor: pointer;
2024  flex: 0 0 auto;
2025}
2026
2027.win-lang-swap:hover {
2028  background: var(--brand-surface-strong);
2029  color: var(--brand-text-1);
2030}
2031
2032.win-lang-swap svg {
2033  width: 13px;
2034  height: 13px;
2035}
2036
2037.win-lang-popover {
2038  position: absolute;
2039  bottom: calc(100% + 8px);
2040  right: 0;
2041  z-index: 20;
2042  width: 306px;
2043  max-height: 320px;
2044  display: flex;
2045  flex-direction: column;
2046  border-radius: 12px;
2047  background: var(--brand-canvas, var(--brand-bg));
2048  overflow: hidden;
2049  box-shadow:
2050    0 16px 40px rgba(15, 23, 42, 0.2),
2051    0 0 0 1px rgba(15, 23, 42, 0.08);
2052}
2053
2054.win-lang-filter-row {
2055  flex: 0 0 auto;
2056  display: flex;
2057  align-items: center;
2058  gap: 4px;
2059  margin: 8px 8px 4px;
2060}
2061
2062.win-lang-filter {
2063  flex: 1 1 auto;
2064  min-width: 0;
2065  height: 30px;
2066  padding: 0 11px;
2067  border-radius: 999px;
2068  border: 1px solid var(--brand-border);
2069  background: var(--brand-canvas, var(--brand-bg));
2070  color: var(--brand-text-1);
2071  font: inherit;
2072  font-size: 12px;
2073  outline: none;
2074}
2075
2076.win-lang-filter:focus {
2077  border-color: var(--brand-text-1);
2078}
2079
2080.win-lang-cols {
2081  flex: 1 1 auto;
2082  min-height: 0;
2083  display: flex;
2084  gap: 4px;
2085  padding: 0 6px 8px;
2086}
2087
2088.win-lang-col {
2089  flex: 1 1 0;
2090  min-width: 0;
2091  min-height: 0;
2092  display: flex;
2093  flex-direction: column;
2094}
2095
2096.win-lang-col-divider {
2097  flex: 0 0 auto;
2098  width: 1px;
2099  margin: 6px 2px 0;
2100  background: var(--brand-border-subtle);
2101}
2102
2103.win-lang-col-scroll {
2104  flex: 1 1 auto;
2105  min-height: 0;
2106  overflow-y: auto;
2107}
2108
2109.win-lang-group {
2110  padding: 8px 8px 2px;
2111  font-size: 10px;
2112  font-weight: 700;
2113  letter-spacing: 0.06em;
2114  text-transform: uppercase;
2115  color: var(--brand-text-3);
2116}
2117
2118.win-lang-option {
2119  width: 100%;
2120  display: flex;
2121  align-items: center;
2122  justify-content: space-between;
2123  gap: 8px;
2124  height: 30px;
2125  padding: 0 10px;
2126  border: none;
2127  border-radius: 8px;
2128  background: transparent;
2129  color: var(--brand-text-1);
2130  font: inherit;
2131  font-size: 12.5px;
2132  text-align: left;
2133  cursor: pointer;
2134}
2135
2136.win-lang-option > span {
2137  overflow: hidden;
2138  text-overflow: ellipsis;
2139  white-space: nowrap;
2140}
2141
2142.win-lang-option > .win-lang-option-check {
2143  flex: none;
2144  display: inline-flex;
2145  align-items: center;
2146}
2147
2148.win-lang-option[aria-selected='false'] > .win-lang-option-check {
2149  visibility: hidden;
2150}
2151
2152.win-lang-option:hover {
2153  background: var(--brand-surface);
2154}
2155
2156.win-lang-option[aria-selected='true'] {
2157  font-weight: 600;
2158}
2159
2160.win-lang-option svg {
2161  width: 13px;
2162  height: 13px;
2163  color: var(--brand-primary);
2164  flex: 0 0 auto;
2165}
2166
2167.win-lang-empty {
2168  padding: 14px 10px;
2169  font-size: 12px;
2170  color: var(--brand-text-3);
2171  text-align: center;
2172}
2173
2174.win-lang-manage-row {
2175  flex: 0 0 auto;
2176  padding: 6px;
2177  border-top: 1px solid var(--brand-border-subtle);
2178}
2179
2180.win-lang-manage {
2181  display: block;
2182  width: 100%;
2183  padding: 6px 10px;
2184  border: none;
2185  border-radius: 999px;
2186  background: transparent;
2187  color: var(--brand-text-3);
2188  font: inherit;
2189  font-size: 11px;
2190  font-weight: 500;
2191  text-align: left;
2192  cursor: pointer;
2193}
2194
2195.win-lang-manage:hover {
2196  color: var(--brand-text-1);
2197}
2198
2199.win-label-with-score {
2200  display: inline-flex;
2201  align-items: center;
2202  gap: 6px;
2203}
2204
2205.kr-cc-action-btn[data-loading='true'] {
2206  cursor: default;
2207}
2208
2209.kr-cc-action-btn[data-loading='true'] .kr-cc-action-icon svg {
2210  animation: kr-spin 0.8s linear infinite;
2211}
2212
2213/* the layout toggle is one more icon in the input cluster, not a chip: no pill,
2214   no border, no aria-pressed fill. it never reserves a column — it floats over
2215   whatever is under it and carries the same left fade the counter and the input
2216   cluster already use, so the text beneath stays readable. */
2217
2218.win-layout-toggle {
2219  position: absolute;
2220  top: 6px;
2221  right: 12px;
2222  z-index: 6;
2223  display: inline-flex;
2224  align-items: center;
2225  padding-left: 20px;
2226  background: linear-gradient(to right, transparent, var(--brand-canvas, var(--brand-bg)) 16px);
2227  pointer-events: none;
2228  transition: opacity 120ms ease;
2229}
2230
2231/* the fade is 20px of pure decoration sitting on top of whatever scrolls past.
2232   it must not also collect the clicks meant for what is underneath it */
2233
2234.win-layout-toggle button {
2235  pointer-events: auto;
2236}
2237
2238/* stacked, the source pane spans the whole shell, so the cluster would land on
2239   top of the toggle. side by side the cluster belongs to the left pane and the
2240   toggle to the shell, so they cannot meet. */
2241
2242.win-shell[data-toggle='in-frame'] .win-body[data-layout='v'] .win-input-acts {
2243  right: 39px;
2244}
2245
2246/* side by side the toggle floats over the result column instead. it reserves
2247   nothing — no row, no column. the one thing that can reach up into its corner
2248   is the first label row's own copy/speak, so that single row ends where the
2249   toggle begins; everything below scrolls under the fade. */
2250
2251.win-shell[data-toggle='in-frame']
2252  .win-body[data-layout='h']
2253  .win-result-scroll
2254  .label-row:first-child {
2255  padding-right: 30px;
2256}
2257
2258.kr-speaking .kr-speaking-wave {
2259  opacity: 0;
2260  animation: 1.2s linear infinite;
2261}
2262
2263.kr-speaking .kr-speaking-wave[data-wave='1'] {
2264  animation-name: kr-speaking-wave-1;
2265}
2266
2267.kr-speaking .kr-speaking-wave[data-wave='2'] {
2268  animation-name: kr-speaking-wave-2;
2269}
2270
2271.kr-speaking .kr-speaking-wave[data-wave='3'] {
2272  animation-name: kr-speaking-wave-3;
2273}
2274
2275@keyframes kr-speaking-wave-1 {
2276  0%, 24.9% { opacity: 0; }
2277  25%, 100% { opacity: 1; }
2278}
2279
2280@keyframes kr-speaking-wave-2 {
2281  0%, 49.9% { opacity: 0; }
2282  50%, 100% { opacity: 1; }
2283}
2284
2285@keyframes kr-speaking-wave-3 {
2286  0%, 74.9% { opacity: 0; }
2287  75%, 100% { opacity: 1; }
2288}
2289
2290@media (prefers-reduced-motion: reduce) {
2291  .kr-speaking .kr-speaking-wave {
2292    opacity: 1;
2293    animation: none;
2294  }
2295}
2296
2297.kr-wl-word {
2298  cursor: pointer;
2299  border-radius: 3px;
2300  transition: background-color 120ms ease;
2301}
2302
2303.kr-wl-word:hover,
2304.kr-wl-word[data-open='true'] {
2305  background: var(--brand-surface-strong);
2306}
2307
2308.kr-wl-word[data-known='true'] {
2309  text-decoration: underline dotted var(--brand-accent-teal);
2310  text-underline-offset: 3px;
2311}
2312
2313.kr-wl-word:focus-visible {
2314  outline: 2px solid var(--brand-primary);
2315  outline-offset: 1px;
2316}
2317
2318.kr-wl-pop {
2319  position: fixed;
2320  top: 0;
2321  left: 0;
2322  z-index: 20;
2323  width: max-content;
2324  min-width: 216px;
2325  max-width: 288px;
2326  display: flex;
2327  flex-direction: column;
2328  gap: 8px;
2329  padding: 12px;
2330  border-radius: 12px;
2331  background: var(--brand-canvas, var(--brand-bg));
2332  box-shadow:
2333    0 16px 40px rgba(15, 23, 42, 0.2),
2334    0 0 0 1px rgba(15, 23, 42, 0.08);
2335  visibility: hidden;
2336  opacity: 0;
2337  pointer-events: none;
2338  transform: translateY(10px);
2339  transition:
2340    opacity 140ms ease,
2341    transform 140ms cubic-bezier(0.2, 0, 0, 1),
2342    visibility 140ms;
2343}
2344
2345.kr-wl-pop[data-place='below'] {
2346  transform: translateY(-10px);
2347}
2348
2349.kr-wl-pop[data-open='true'] {
2350  visibility: visible;
2351  opacity: 1;
2352  pointer-events: auto;
2353  transform: translateY(0);
2354}
2355
2356.kr-wl-pop[data-glide='true'] {
2357  transition: translate 160ms cubic-bezier(0.2, 0, 0, 1);
2358}
2359
2360@media (prefers-reduced-motion: reduce) {
2361  .kr-wl-pop,
2362  .kr-wl-pop[data-place],
2363  .kr-wl-pop[data-open='true'] {
2364    transform: none;
2365  }
2366
2367  .kr-wl-pop[data-glide='true'] {
2368    transition: none;
2369  }
2370}
2371
2372.kr-wl-term {
2373  font-size: 15px;
2374  font-weight: 600;
2375  line-height: 1.3;
2376  color: var(--brand-text-1);
2377  overflow: hidden;
2378  text-overflow: ellipsis;
2379  white-space: nowrap;
2380}
2381
2382.kr-wl-gloss {
2383  font-size: 13px;
2384  line-height: 1.55;
2385  color: var(--brand-body);
2386}
2387
2388.kr-wl-gloss[data-pending='true'],
2389.kr-wl-gloss[data-empty='true'] {
2390  color: var(--brand-text-3);
2391}
2392
2393.kr-wl-skel {
2394  display: block;
2395  height: 13px;
2396  margin: 3px 0;
2397  border-radius: 3px;
2398  background: linear-gradient(
2399    90deg,
2400    var(--brand-surface-2) 0%,
2401    var(--brand-border-subtle) 50%,
2402    var(--brand-surface-2) 100%
2403  );
2404  background-size: 200% 100%;
2405  animation: kr-wl-skel-shimmer 1.1s ease-in-out infinite;
2406}
2407
2408.kr-wl-skel + .kr-wl-skel {
2409  width: 62%;
2410}
2411
2412@keyframes kr-wl-skel-shimmer {
2413  from {
2414    background-position: 200% 0;
2415  }
2416  to {
2417    background-position: -200% 0;
2418  }
2419}
2420
2421@media (prefers-reduced-motion: reduce) {
2422  .kr-wl-skel {
2423    animation: none;
2424  }
2425}
2426
2427.kr-wl-def {
2428  font-size: 12px;
2429  line-height: 1.5;
2430  color: var(--brand-text-3);
2431}
2432
2433.kr-wl-cefr {
2434  display: inline-flex;
2435  align-items: center;
2436  border-radius: 999px;
2437  font-size: 11px;
2438  font-weight: 600;
2439  letter-spacing: 0.02em;
2440  padding: 1px 10px;
2441  flex: 0 0 auto;
2442}
2443
2444.kr-wl-body {
2445  display: flex;
2446  flex-direction: column;
2447  gap: 8px;
2448  min-width: 0;
2449  min-height: 0;
2450}
2451
2452.kr-wl-pop[data-sized='true'] {
2453  min-width: 0;
2454  max-width: none;
2455}
2456
2457.kr-wl-pop[data-sized='true'] .kr-wl-body {
2458  flex: 1 1 auto;
2459  overflow-y: auto;
2460  overscroll-behavior: contain;
2461}
2462
2463.kr-wl-pop .win-act-row {
2464  margin-top: 2px;
2465}
2466
2467.kr-wl-pop .kr-cc-draft-chip {
2468  position: static;
2469  transform: none;
2470  flex: 0 0 auto;
2471}
2472
2473.kr-wl-pop [hidden] {
2474  display: none !important;
2475}
2476
2477.kr-wl-pop .win-act[data-labelled='true'] {
2478  width: 32px;
2479  min-width: 32px;
2480  padding: 0;
2481  gap: 0;
2482  justify-content: center;
2483}
2484
2485.kr-wl-pop .win-act[data-labelled='true'] > span:not(.win-act-ico) {
2486  display: none;
2487}
2488
2489.kr-wl-spacer {
2490  flex: 1 1 auto;
2491}
2492
2493.kr-wl-pop .kr-tip-content {
2494  top: auto;
2495  bottom: calc(100% + 6px);
2496  transform: translateX(-50%) translateY(2px);
2497}
2498
2499.kr-wl-pop .kr-tip:hover > .kr-tip-content,
2500.kr-wl-pop .kr-tip:has(:focus-visible) > .kr-tip-content {
2501  transform: translateX(-50%) translateY(0);
2502}
2503
2504.kr-wl-bar {
2505  min-width: 0;
2506  flex-direction: row;
2507  align-items: center;
2508  gap: 4px;
2509  padding: 6px;
2510  border-radius: 999px;
2511}
2512
2513.kr-wl-bar .win-act[data-labelled='true'] {
2514  width: auto;
2515  min-width: 0;
2516  padding: 0 13px 0 11px;
2517  gap: 6px;
2518  justify-content: flex-start;
2519}
2520
2521.kr-wl-bar .win-act[data-labelled='true'] > span:not(.win-act-ico) {
2522  display: inline;
2523}
2524
2525.kr-fw-head {
2526  display: flex;
2527  align-items: center;
2528  gap: 8px;
2529  min-width: 0;
2530  flex: 0 0 auto;
2531}
2532
2533[data-movable='true'] > .kr-fw-head {
2534  cursor: grab;
2535  user-select: none;
2536  touch-action: none;
2537}
2538
2539[data-movable='true'] > .kr-fw-head:active {
2540  cursor: grabbing;
2541}
2542
2543[data-movable='true'] > .kr-fw-head .kr-fw-actions {
2544  cursor: default;
2545}
2546
2547.kr-fw-title {
2548  min-width: 0;
2549  overflow: hidden;
2550  text-overflow: ellipsis;
2551  white-space: nowrap;
2552}
2553
2554.kr-fw-actions {
2555  display: inline-flex;
2556  align-items: center;
2557  gap: 2px;
2558  margin-left: auto;
2559  flex: 0 0 auto;
2560}
2561
2562.kr-fw-edge {
2563  position: absolute;
2564  z-index: 10;
2565  padding: 0;
2566  border: 0;
2567  background: transparent;
2568  touch-action: none;
2569}
2570
2571.kr-fw-edge[data-edge='n'],
2572.kr-fw-edge[data-edge='s'] {
2573  left: 8px;
2574  right: 8px;
2575  height: 8px;
2576  cursor: ns-resize;
2577}
2578
2579.kr-fw-edge[data-edge='n'] {
2580  top: -4px;
2581}
2582
2583.kr-fw-edge[data-edge='s'] {
2584  bottom: -4px;
2585}
2586
2587.kr-fw-edge[data-edge='w'],
2588.kr-fw-edge[data-edge='e'] {
2589  top: 8px;
2590  bottom: 8px;
2591  width: 8px;
2592  cursor: ew-resize;
2593}
2594
2595.kr-fw-edge[data-edge='w'] {
2596  left: -4px;
2597}
2598
2599.kr-fw-edge[data-edge='e'] {
2600  right: -4px;
2601}
2602
2603.kr-fw-edge[data-edge='nw'],
2604.kr-fw-edge[data-edge='ne'],
2605.kr-fw-edge[data-edge='sw'],
2606.kr-fw-edge[data-edge='se'] {
2607  z-index: 11;
2608  width: 14px;
2609  height: 14px;
2610}
2611
2612.kr-fw-edge[data-edge='nw'] {
2613  top: -4px;
2614  left: -4px;
2615  cursor: nwse-resize;
2616}
2617
2618.kr-fw-edge[data-edge='ne'] {
2619  top: -4px;
2620  right: -4px;
2621  cursor: nesw-resize;
2622}
2623
2624.kr-fw-edge[data-edge='sw'] {
2625  bottom: -4px;
2626  left: -4px;
2627  cursor: nesw-resize;
2628}
2629
2630.kr-fw-edge[data-edge='se'] {
2631  bottom: -4px;
2632  right: -4px;
2633  cursor: nwse-resize;
2634}
2635
2636.kr-fw-edge:focus-visible {
2637  outline: 2px solid var(--brand-primary);
2638  outline-offset: -2px;
2639  border-radius: 4px;
2640}
2641
2642.kr-fw-grip {
2643  position: absolute;
2644  right: 3px;
2645  bottom: 3px;
2646  z-index: 12;
2647  width: 14px;
2648  height: 14px;
2649  padding: 0;
2650  border: 0;
2651  background: transparent;
2652  color: var(--brand-text-3);
2653  cursor: nwse-resize;
2654  touch-action: none;
2655}
2656
2657.kr-fw-grip:hover,
2658.kr-fw-grip:focus-visible {
2659  color: var(--brand-text-1);
2660}
2661
2662.kr-fw-grip svg {
2663  display: block;
2664  width: 14px;
2665  height: 14px;
2666}
2667
2668@media (max-width: 767px) {
2669  .kr-fw-edge {
2670    display: none;
2671  }
2672
2673  [data-movable='true'] > .kr-fw-head,
2674  [data-movable='true'] > .kr-fw-head:active {
2675    cursor: default;
2676  }
2677}
2678
2679.kr-resize-divider {
2680  position: relative;
2681  flex: 0 0 auto;
2682  align-self: stretch;
2683  padding: 0;
2684  border: 0;
2685  background: transparent;
2686  touch-action: none;
2687}
2688.kr-resize-divider[data-orientation='vertical'] {
2689  width: 9px;
2690  margin: 0 -4px;
2691  cursor: col-resize;
2692}
2693.kr-resize-divider[data-orientation='horizontal'] {
2694  height: 9px;
2695  margin: -4px 0;
2696  cursor: row-resize;
2697  width: 100%;
2698}
2699.kr-resize-divider:focus {
2700  outline: none;
2701}
2702.kr-resize-divider .kr-resize-divider-rail {
2703  position: absolute;
2704  background: var(--brand-border-subtle);
2705}
2706.kr-resize-divider[data-orientation='vertical'] .kr-resize-divider-rail {
2707  top: 0;
2708  bottom: 0;
2709  left: 50%;
2710  width: 1px;
2711  margin-left: -0.5px;
2712}
2713.kr-resize-divider[data-orientation='horizontal'] .kr-resize-divider-rail {
2714  left: 0;
2715  right: 0;
2716  top: 50%;
2717  height: 1px;
2718  margin-top: -0.5px;
2719}
2720.kr-resize-divider .kr-resize-divider-line {
2721  position: absolute;
2722  background: var(--brand-border);
2723  transition: transform .24s cubic-bezier(.2,0,0,1), background-color .24s cubic-bezier(.2,0,0,1);
2724}
2725.kr-resize-divider[data-orientation='vertical'] .kr-resize-divider-line {
2726  top: 0;
2727  bottom: 0;
2728  left: 50%;
2729  width: 1px;
2730  margin-left: -0.5px;
2731  transform: scaleY(0);
2732  transform-origin: center;
2733}
2734.kr-resize-divider[data-orientation='horizontal'] .kr-resize-divider-line {
2735  left: 0;
2736  right: 0;
2737  top: 50%;
2738  height: 1px;
2739  margin-top: -0.5px;
2740  transform: scaleX(0);
2741  transform-origin: center;
2742}
2743.kr-resize-divider .kr-resize-divider-grip {
2744  position: absolute;
2745  top: 50%;
2746  left: 50%;
2747  border-radius: 999px;
2748  background: var(--brand-border);
2749  transform: translate(-50%, -50%);
2750  transition: width .24s cubic-bezier(.2,0,0,1), height .24s cubic-bezier(.2,0,0,1), background-color .24s cubic-bezier(.2,0,0,1);
2751}
2752.kr-resize-divider[data-orientation='vertical'] .kr-resize-divider-grip {
2753  width: 2px;
2754  height: 34px;
2755}
2756.kr-resize-divider[data-orientation='horizontal'] .kr-resize-divider-grip {
2757  width: 34px;
2758  height: 2px;
2759}
2760.kr-resize-divider:hover .kr-resize-divider-line,
2761.kr-resize-divider:focus-visible .kr-resize-divider-line,
2762.kr-resize-divider.is-active .kr-resize-divider-line {
2763  background: var(--brand-primary);
2764  transform: scaleY(1) scaleX(1);
2765}
2766.kr-resize-divider:hover .kr-resize-divider-grip,
2767.kr-resize-divider:focus-visible .kr-resize-divider-grip,
2768.kr-resize-divider.is-active .kr-resize-divider-grip {
2769  background: var(--brand-primary);
2770}
2771.kr-resize-divider[data-orientation='vertical']:hover .kr-resize-divider-grip,
2772.kr-resize-divider[data-orientation='vertical']:focus-visible .kr-resize-divider-grip,
2773.kr-resize-divider[data-orientation='vertical'].is-active .kr-resize-divider-grip {
2774  width: 4px;
2775  height: 46px;
2776}
2777.kr-resize-divider[data-orientation='horizontal']:hover .kr-resize-divider-grip,
2778.kr-resize-divider[data-orientation='horizontal']:focus-visible .kr-resize-divider-grip,
2779.kr-resize-divider[data-orientation='horizontal'].is-active .kr-resize-divider-grip {
2780  width: 46px;
2781  height: 4px;
2782}
2783@media (prefers-reduced-motion: reduce) {
2784  .kr-resize-divider .kr-resize-divider-line,
2785  .kr-resize-divider .kr-resize-divider-grip {
2786    transition: none;
2787  }
2788}
2789</style><main class="bg-brand-bg text-brand-text-1 min-h-screen"><header data-testid="landing-header" data-scrolled="false" class="sticky top-0 z-40 w-full transition-[background-color,box-shadow,backdrop-filter] duration-200 backdrop-blur-0" style="background-color: var(--brand-surface); box-shadow: none;"><div class="mx-auto grid h-16 w-full max-w-7xl grid-cols-[1fr_auto_1fr] items-center px-5 sm:px-8"><a class="focus-visible:ring-brand-text-1 inline-flex justify-self-start rounded-full focus-visible:outline-none focus-visible:ring-2" aria-label="KeepReap" href="/"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-8 w-8" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-r0" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2790<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 
27901329.41 1271.8 1289.75L1169.1 1167.54L1055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-r0)"></path></g>
2791</svg></a><nav aria-label="Primary" data-testid="landing-header-nav" class="text-brand-text-2 hidden items-center gap-5 whitespace-nowrap text-sm lg:flex xl:gap-7"><a href="/books" class="hover:text-brand-text-1 transition-colors">Books</a><a href="/#how-it-works" class="hover:text-brand-text-1 transition-colors">How it works</a><a href="/#capture" class="hover:text-brand-text-1 transition-colors">Capture</a><a href="/#mac" class="hover:text-brand-text-1 transition-colors">Mac app</a><a href="/#work-scenarios" class="hover:text-brand-text-1 transition-colors">Work</a><a href="/s" class="hover:text-brand-text-1 transition-colors">Explore</a><span class="group relative inline-flex items-start"><a href="/#pricing" class="hover:text-brand-text-1 transition-colors">Pricing</a><a href="/#refer-and-earn" aria-label="Refer friends, earn unlimited credits" class="text-brand-accent-amber focus-visible:ring-brand-text-1 relative -top-1.5 ml-0.5 rounded-full focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-gift size-3" aria-hidden="true"><rect x="3" y="8" width="18" height="4" rx="1"></rect><path d="M12 8v13"></path><path d="M19 12v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-7"></path><path d="M7.5 8a2.5 2.5 0 0 1 0-5A4.8 8 0 0 1 12 8a4.8 8 0 0 1 4.5-5 2.5 2.5 0 0 1 0 5"></path></svg></a><span class="pointer-events-none absolute left-full top-1/2 z-50 ml-3 -translate-y-1/2 opacity-0 transition-opacity duration-150 group-focus-within:opacity-100 group-hover:opacity-100"><span aria-hidden="true" class="bg-brand-primary absolute -left-1 top-1/2 size-2 -translate-y-1/2 rotate-45 rounded-[1px]"></span><span aria-hidden="true" class="bg-brand-primary text-brand-on-primary block w-max max-w-[220px] rounded-lg px-3 py-2 text-xs font-medium shadow-lg">Refer friends, earn unlimited credits</span></span></span><a href="/#faq" class="hover:text-brand-text-1 transition-colors">FAQ</a></nav><div class="flex items-center gap-2 justify-self-end sm:gap-3"><div class="relative"><button aria-label="Display Language" type="button" class="inline-flex items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none bg-transparent h-10 w-10 [&amp;&gt;svg:not([class*='h-'])]:h-4 [&amp;&gt;svg:not([class*='w-'])]:w-4 text-brand-text-1 hover:bg-brand-surface/70 focus-visible:ring-brand-text-1"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg></button></div><a class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none bg-brand-primary text-brand-on-primary hover:bg-brand-primary-hover focus-visible:ring-brand-link h-[42px] px-6 text-base" href="/sign-in?after=/home">Sign In</a></div></div></header><section data-testid="landing-hero" data-landing-hero="" class="bg-brand-surface px-6 pb-8 pt-10 text-center sm:pb-12 sm:pt-16 md:pb-16 md:pt-20"><div class="landing-hero-measure mx-auto max-w-4xl"><div class="hero-reveal" style="--hero-d: 180ms;"><p data-testid="landing-hero-eyebrow" class="landing-hero-eyebrow text-brand-text-2 border-brand-border-subtle bg-brand-surface-2 mb-8 inl
2791ine-block rounded-full border px-4 py-2 text-center text-[11.5px] font-medium uppercase md:mb-14"><span class="text-brand-accent-amber mr-3" aria-hidden="true">•</span>Capture · Improve · Keep what you read</p></div><h1 data-testid="landing-hero-title" class="landing-hero-headline text-brand-text-1" style="--hero-em: 7.13;"><span class="hero-reveal block" style="--hero-d: 300ms;">Write <em class="text-brand-accent-amber not-italic [.landing-hero-headline_&amp;]:italic">English</em></span><span class="hero-reveal block" style="--hero-d: 440ms;">that sounds <em class="text-brand-accent-amber not-italic [.landing-hero-headline_&amp;]:italic">native.</em></span></h1><div class="hero-reveal" style="--hero-d: 660ms;"><p class="landing-hero-lede text-brand-text-2 mx-auto mt-8 max-w-xl text-base leading-relaxed md:mt-14 md:text-lg">Improve any sentence in one click — then keep the words until they're yours.</p></div></div><div class="hero-reveal mx-auto mt-6 max-w-[960px] space-y-4 text-left md:mt-10" style="--hero-d: 800ms;"><div data-testid="landing-video-promo" data-landing-video="" class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle relative w-full overflow-hidden rounded-xl border shadow-sm ring-1"><div class="bg-brand-surface-2 relative aspect-video w-full"><video src="/videos/keepreap-promo.mp4" poster="/videos/keepreap-promo.jpg" aria-label="KeepReap product video" width="1920" height="1080" autoplay="" loop="" playsinline="" preload="metadata" class="absolute inset-0 h-full w-full object-cover"></video><button type="button" data-testid="landing-video-sound" aria-label="Turn sound on" title="Turn sound on" class="border-brand-border-subtle bg-brand-bg/85 text-brand-text-1 border backdrop-blur hover:bg-brand-bg focus-visible:ring-brand-text-1 absolute bottom-3 right-3 inline-flex size-10 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume-x size-[18px]" aria-hidden="true"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><line x1="22" x2="16" y1="9" y2="15"></line><line x1="16" x2="22" y1="9" y2="15"></line></svg></button></div></div><div class="flex justify-center sm:hidden"><button type="button" class="bg-brand-primary text-brand-on-primary hover:bg-brand-primary-hover inline-flex min-w-[200px] items-center justify-center rounded-full px-6 py-3 text-sm font-semibold transition-colors">Start Free</button></div></div><div class="hero-reveal mx-auto mt-6 hidden max-w-3xl justify-center sm:flex md:mt-8" style="--hero-d: 940ms;"><div class="flex flex-col items-center gap-4"><div data-testid="landing-install-buttons" data-primary-platform="chrome" class="flex flex-wrap items-center justify-center gap-4"><a href="https://chromewebstore.google.com/detail/keepreap/oejbdpilpmhphopjidgpfbonoepgngim" target="_blank" rel="noopener noreferrer" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none bg-brand-primary text-brand-on-primary hover:bg-brand-primary-hover focus-visible:ring-brand-link h-[42px] px-6 text-base"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chrome h-4 w-4" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="4"></circle><line x1="21.17" x2="12" y1="8" y2="8"></line><line x1="3.95" x2="8.54" y1="6.06" y2="14"></line><line x1="10.88" x2="15.46" y1="21.94" y2="14"></line></svg>Add to Chrome</a><a href="/keepreap-extension-v0.3.10.zip" download="" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none bg-transparent border hover:bg-brand-surface h-[42px] px-6 text-base text-brand-primary border-brand-primary focus-visible:ring-brand-primary"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download h-4 w-4" aria-hidden="true"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="7 10 12 15 17 10"></polyline><line x1="12" x2="12" y1="15" y2="3"></line></svg>Download .zip<span class="font-mono text-xs font-normal opacity-60">v0.3.10</span></a><a href="https://github.com/ocxers/keepreap-releases/releases/latest/download/KeepReap-macOS.dmg" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none bg-transparent border hover:bg-brand-surface h-[42px] px-6 text-base text-brand-primary border-brand-primary focus-visible:ring-brand-primary"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-apple h-4 w-4" aria-hidden="true"><path d="M12 20.94c1.5 0 2.75 1.06 4 1.06 3 0 6-8 6-12.22A4.91 4.91 0 0 0 17 5c-2.22 0-4 1.44-5 2-1-.56-2.78-2-5-2a4.9 4.9 0 0 0-5 4.78C2 14 5 22 8 22c1.25 0 2.5-1.06 4-1.06Z"></path><path d="M10 2c1 .5 2 2 2 5"></path></svg>Download for Mac</a></div><a href="#how-it-works" class="inline-flex items-center gap-1 whitespace-nowrap underline-offset-4 transition-colors rounded-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none text-brand-text-2 hover:text-brand-text-1 hover:underline focus-visible:ring-brand-text-1 text-xs">How it works <span class="hero-bob inline-block" aria-hidden="true">↓</span></a></div></div><div class="hero-reveal" style="--hero-d: 1140ms;"><p class="landing-hero-footnote text-brand-text-3 mx-auto mb-8 mt-4 hidden max-w-3xl text-xs sm:block md:mt-6">Free to start · No card required · Chrome, Mac and the web</p></div></section><section id="books" data-testid="landing-books" class="bg-brand-bg px-6 py-20 md:py-28"><div data-revealed="false" class="section-reveal mx-auto grid max-w-6xl items-center gap-12 lg:grid-cols-[minmax(0,5fr)_minmax(0,6fr)] lg:gap-16"><div><p class="section-reveal-item text-brand-text-3 font-mono text-[11px] font-semibold uppercase tracking-[0.18em]">
2791Free to read · No account needed</p><h2 class="section-reveal-item text-brand-text-1 mt-4 font-serif text-3xl font-medium tracking-tight md:text-5xl">Read a real book in English</h2><p class="section-reveal-item text-brand-text-2 mt-5 text-base leading-relaxed md:text-lg md:leading-relaxed" style="--reveal-d: 120ms;">Open a classic from the shelf and just read. When a word stops you, its meaning is right there — and the words you keep follow you into practice.</p><ul class="mt-8 space-y-5"><li class="section-reveal-item flex gap-4" style="--reveal-d: 200ms;"><span class="border-brand-border-subtle bg-brand-surface text-brand-text-1 flex size-10 shrink-0 items-center justify-center rounded-full border"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mouse-pointer2 size-[18px]" aria-hidden="true"><path d="M4.037 4.688a.495.495 0 0 1 .651-.651l16 6.5a.5.5 0 0 1-.063.947l-6.124 1.58a2 2 0 0 0-1.438 1.435l-1.579 6.126a.5.5 0 0 1-.947.063z"></path></svg></span><div><h3 class="text-brand-text-1 text-base font-semibold">Hover to look it up</h3><p class="text-brand-text-2 mt-1 text-sm leading-relaxed md:text-[15px]">Rest the pointer on a word for a quick meaning, then tap Look Up to see what it means in that exact sentence.</p></div></li><li class="section-reveal-item flex gap-4" style="--reveal-d: 300ms;"><span class="border-brand-border-subtle bg-brand-surface text-brand-text-1 flex size-10 shrink-0 items-center justify-center rounded-full border"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bookmark-plus size-[18px]" aria-hidden="true"><path d="m19 21-7-4-7 4V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v16z"></path><line x1="12" x2="12" y1="7" y2="13"></line><line x1="15" x2="9" y1="10" y2="10"></line></svg></span><div><h3 class="text-brand-text-1 text-base font-semibold">Keep the words you stop at</h3><p class="text-brand-text-2 mt-1 text-sm leading-relaxed md:text-[15px]">Save a word in one click. Each book's words gather into their own list in My Words, ready for review.</p></div></li><li class="section-reveal-item flex gap-4" style="--reveal-d: 400ms;"><span class="border-brand-border-subtle bg-brand-surface text-brand-text-1 flex size-10 shrink-0 items-center justify-center rounded-full border"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-up size-[18px]" aria-hidden="true"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"></path><path d="M14 2v4a2 2 0 0 0 2 2h4"></path><path d="M12 12v6"></path><path d="m15 15-3-3-3 3"></path></svg></span><div><h3 class="text-brand-text-1 text-base font-semibold">Bring your own PDF</h3><p class="text-brand-text-2 mt-1 text-sm leading-relaxed md:text-[15px]">Upload the books you're already reading. The Free plan keeps up to 20 on your shelf; Plus and Pro have no limit.</p></div></li></ul><div class="section-reveal-item mt-9" style="--reveal-d: 520ms;"><a class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none bg-transparent text-brand-text-1 border border-brand-border hover:bg-brand-surface focus-visible:ring-brand-text-1 h-[42px] px-6 text-base" href="/books">Browse the Shelf<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right h-4 w-4" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></div></div><ul aria-label="Books on the public shelf" class="section-reveal-item grid grid-cols-3 gap-4 sm:gap-5" style="--reveal-d: 240ms;"><li data-testid="landing-books-slot" aria-hidden="true"><span class="bg-brand-surface-strong border-brand-border-subtle relative block aspect-[2/3] w-full overflow-hidden rounded-xl border shadow-sm"></span></li><li data-testid="landing-books-slot" aria-hidden="true"><span class="bg-brand-surface-strong border-brand-border-subtle relative block aspect-[2/3] w-full overflow-hidden rounded-xl border shadow-sm"></span></li><li data-testid="landing-books-slot" aria-hidden="true"><span class="bg-brand-surface-strong border-brand-border-subtle relative block aspect-[2/3] w-full overflow-hidden rounded-xl border shadow-sm"></span></li><li data-testid="landing-books-slot" aria-hidden="true"><span class="bg-brand-surface-strong border-brand-border-subtle relative block aspect-[2/3] w-full overflow-hidden rounded-xl border shadow-sm"></span></li><li data-testid="landing-books-slot" aria-hidden="true"><span class="bg-brand-surface-strong border-brand-border-subtle relative block aspect-[2/3] w-full overflow-hidden rounded-xl border shadow-sm"></span></li><li data-testid="landing-books-slot" aria-hidden="true"><span class="bg-brand-surface-strong border-brand-border-subtle relative block aspect-[2/3] w-full overflow-hidden rounded-xl border shadow-sm"></span></li></ul></div><div class="mx-auto mt-14 max-w-5xl md:mt-20"><div data-testid="landing-video-reader" data-landing-video="" class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle relative w-full overflow-hidden rounded-xl border shadow-sm ring-1"><div class="bg-brand-surface-2 relative aspect-video w-full"><video src="/videos/keepreap-reader.mp4" poster="/videos/keepreap-reader.jpg" aria-label="Video: reading an English book and looking up words" width="1920" height="1080" loop="" playsinline="" preload="none" class="absolute inset-0 h-full w-full object-cover cursor-pointer"></video></div><div data-testid="landing-video-controls" class="border-brand-border-subtle text-brand-text-1 flex items-center gap-1 border-t px-2 py-1.5 sm:gap-2"><button type="button" data-testid="landing-video-play" aria-label="Play" title="Play" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-play size-4" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg></button><span class="text-brand-text-2 hidden min-w-[5.5rem] text-center text-xs tabular-nums sm:inline">0:00 / 0:00</span><div role="slider" tabindex="0" aria-label="Video progress" aria-valuemin="0" aria-valuemax="0" aria-valuenow="0" aria-valuetext="0:00 / 0:00" class="focus-visible:ring-brand-text-1 flex h-6 min-w-0 flex-1 cursor-pointer items-center rounded-full focus-visible:outline-none focus-visible:ring-2"><div class="bg-brand-border relative h-1 w-full overflow-hidden rounded-full"><div data-testid="landing-video-progress" class="bg-brand-text-1 absolute inset-y-0 left-0" style="width: 0%;"></div></div></div><button type="button" data-testid="landing-video-sound" aria-label="Turn sound on" title="Turn sound on" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume-x size-4" aria-hidden="true"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><line x1="22" x2="16" y1="9" y2="15"></line><line x1="16" x2="22" y1="9" y2="15"></line></svg></button><button type="button" aria-label="Full screen" title="Full screen" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize size-4" aria-hidden="true"><path d="M8 3H5a2 2 0 0 0-2 2v3"></path><path d="M21 8V5a2 2 0 0 0-2-2h-3"></path><path d="M3 16v3a2 2 0 0 0 2 2h3"></path><path d="M16 21h3a2 2 0 0 0 2-2v-3"></path></svg></button></div></div></div></section><section id="how-it-works" data-testid="landing-loop" class="bg-brand-surface px-6 py-20 md:py-28"><div data-revealed="false" class="section-reveal mx-auto max-w-6xl"><h2 class="section-reveal-item text-brand-text-1 text-center font-serif text-3xl font-medium tracking-tight md:text-5xl">From a saved word to a word you use</h2><p class="section-reveal-item text-brand-text-2 mx-auto mt-5 max-w-2xl text-center text-base leading-relaxed md:text-lg md:leading-relaxed" style="--reveal-d: 120ms;">Whatever you keep — from the web, your Mac or a book — lands in one place and keeps coming back as practice until it sticks.</p><div class="section-reveal-item mx-auto mt-12 max-w-5xl" style="--reveal-d: 160ms;"><div data-testid="landing-video-practice" data-landing-video="" class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle relative w-full overflow-hidden rounded-xl border shadow-sm ring-1"><div class="bg-brand-surface-2 relative aspect-video w-full"><video src="/videos/keepreap-practice.mp4" poster="/videos/keepreap-practice.jpg" aria-label="Video: reviewing saved words" width="1920" height="1080" loop="" playsinline="" preload="none" class="absolute inset-0 h-full w-full object-cover cursor-pointer"></video></div><div data-testid="landing-video-controls" class="border-brand-border-subtle text-brand-text-1 flex items-center gap-1 border-t px-2 py-1.5 sm:gap-2"><button type="button" data-testid="landing-video-play" aria-label="Play" title="Play" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-play size-4" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg></button><span class="text-brand-text-2 hidden min-w-[5.5rem] text-center text-xs tabular-nums sm:inline">0:00 / 0:00</span><div role="slider" tabindex="0" aria-label="Video progress" aria-valuemin="0" aria-valuemax="0" aria-valuenow="0" aria-valuetext="0:00 / 0:00" class="focus-visible:ring-brand-text-1 flex h-6 min-w-0 flex-1 cursor-pointer items-center rounded-full focus-visible:outline-none focus-visible:ring-2"><div class="bg-brand-border relative h-1 w-full overflow-hidden rounded-full"><div data-testid="landing-video-progress" class="bg-brand-text-1 absolute inset-y-0 left-0" style="width: 0%;"></div></div></div><button type="button" data-testid="landing-video-sound" aria-label="Turn sound on" title="Turn sound on" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume-x size-4" aria-hidden="true"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><line x1="22" x2="16" y1="9" y2="15"></line><line x1="16" x2="22" y1="9" y2="15"></line></svg></button><button type="button" aria-label="Full screen" title="Full screen" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize size-4" aria-hidden="true"><path d="M8 3H5a2 2 0 0 0-2 2v3"></path><path d="M21 8V5a2 2 0 0 0-2-2h-3"></path><path d="M3 16v3a2 2 0 0 0 2 2h3"></path><path d="M16 21h3a2 2 0 0 0 2-2v-3"></path></svg></button></div></div></div><ol class="mt-12 grid gap-6 md:grid-cols-2 lg:grid-cols-4"><li class="section-reveal-item border-brand-border-subtle bg-brand-bg relative rounded-xl border p-6" style="--reveal-d: 160ms;"><div class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">01</div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bookmark text-brand-text-1 mt-3 h-6 w-6" aria-hidden="true"><path d="m19 21-7-4-7 4V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v16z"></path></svg><div class="text-brand-text-1 mt-3 text-lg font-semibold">Collect it in My Words</div><p class="text-brand-text-2 mt-3 text-sm leading-relaxed md:text-[15px] md:leading-relaxed">Words and sentences you save arrive in <strong class="text-brand-text-1 font-semibold">My Words</strong> with their source attached. Or add a ready-made <strong class="text-brand-text-1 font-semibold">Word Library</strong> by level or topic in one tap.</p></li><li class="section-reveal-item border-brand-border-subtle bg-brand-bg relative rounded-xl border p-6" style="--reveal-d: 280ms;"><div class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">02</div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pencil-line text-brand-text-1 mt-3 h-6 w-6" aria-hidden="true"><path d="M12 20h9"></path><path d="M16.376 3.622a1 1 0 0 1 3.002 3.002L7.368 18.635a2 2 0 0 1-.855.506l-2.872.838a.5.5 0 0 1-.62-.62l.838-2.872a2 2 0 0 1 .506-.854z"></path><path d="m15 5 3 3"></path></svg><div class="text-brand-text-1 mt-3 text-lg font-semibold">Practise when it's due</div><p class="text-brand-text-2 mt-3 text-sm leading-relaxed md:text-[15px] md:leading-relaxed"><strong class="text-brand-text-1 font-semibold">Daily Review</strong> brings each item back just before you'd forget it. Practice climbs from picking the right word to <strong class="text-brand-text-1 font-semibold">writing your own sentence</strong>, marked by AI, and <strong class="text-brand-text-1 font-semibold">Weak Spots</strong> retrains your misses.</p></li><li class="section-reveal-item border-brand-border-subtle bg-brand-bg relative rounded-xl border p-6" style="--reveal-d: 400ms;"><div class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">03</div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open-text text-brand-text-1 mt-3 h-6 w-6" aria-hidden="true"><path d="M12 7v14"></path><path d="M16 12h2"></path><path d="M16 8h2"></path><path d="M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z"></path><path d="M6 12h2"></path><path d="M6 8h2"></path></svg><div class="text-brand-text-1 mt-3 text-lg font-semibold">Meet it in a story</div><p class="text-brand-text-2 mt-3 text-sm leading-relaxed md:text-[15px] md:leading-relaxed">KeepReap writes a <strong class="text-brand-text-1
2791 font-semibold">short story</strong> around the words you're learning. Read them in context, then write your own piece and get it marked.</p></li><li class="section-reveal-item border-brand-border-subtle bg-brand-bg relative rounded-xl border p-6" style="--reveal-d: 520ms;"><div class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">04</div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-trending-up text-brand-text-1 mt-3 h-6 w-6" aria-hidden="true"><polyline points="22 7 13.5 15.5 8.5 10.5 2 17"></polyline><polyline points="16 7 22 7 22 13"></polyline></svg><div class="text-brand-text-1 mt-3 text-lg font-semibold">Watch it stick</div><p class="text-brand-text-2 mt-3 text-sm leading-relaxed md:text-[15px] md:leading-relaxed">Your <strong class="text-brand-text-1 font-semibold">streak</strong>, a <strong class="text-brand-text-1 font-semibold">Weekly Check</strong> and a <strong class="text-brand-text-1 font-semibold">CEFR breakdown</strong> of what you've mastered show real progress, not just a growing pile.</p></li></ol></div></section><section id="capture" data-testid="landing-extension-use" class="bg-brand-bg px-6 py-20 md:py-28"><div class="mx-auto max-w-[1500px]"><div class="mx-auto max-w-2xl text-center"><h2 class="text-brand-text-1 font-serif text-3xl font-medium tracking-tight md:text-5xl">Capture while you read</h2><p class="text-brand-text-2 mt-4 text-base leading-relaxed">Four steps. Same page. No tab leaves.</p></div><div class="mx-auto mt-12 max-w-5xl md:mt-16"><div data-testid="landing-video-capture" data-landing-video="" class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle relative w-full overflow-hidden rounded-xl border shadow-sm ring-1"><div class="bg-brand-surface-2 relative aspect-video w-full"><video src="/videos/keepreap-capture.mp4" poster="/videos/keepreap-capture.jpg" aria-label="Video: saving and translating a phrase while reading in the browser" width="1920" height="1080" loop="" playsinline="" preload="none" class="absolute inset-0 h-full w-full object-cover cursor-pointer"></video></div><div data-testid="landing-video-controls" class="border-brand-border-subtle text-brand-text-1 flex items-center gap-1 border-t px-2 py-1.5 sm:gap-2"><button type="button" data-testid="landing-video-play" aria-label="Play" title="Play" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-play size-4" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg></button><span class="text-brand-text-2 hidden min-w-[5.5rem] text-center text-xs tabular-nums sm:inline">0:00 / 0:00</span><div role="slider" tabindex="0" aria-label="Video progress" aria-valuemin="0" aria-valuemax="0" aria-valuenow="0" aria-valuetext="0:00 / 0:00" class="focus-visible:ring-brand-text-1 flex h-6 min-w-0 flex-1 cursor-pointer items-center rounded-full focus-visible:outline-none focus-visible:ring-2"><div class="bg-brand-border relative h-1 w-full overflow-hidden rounded-full"><div data-testid="landing-video-progress" class="bg-brand-text-1 absolute inset-y-0 left-0" style="width: 0%;"></div></div></div><button type="button" data-testid="landing-video-sound" aria-label="Turn sound on" title="Turn sound on" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume-x size-4" aria-hidden="true"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><line x1="22" x2="16" y1="9" y2="15"></line><line x1="16" x2="22" y1="9" y2="15"></line></svg></button><button type="button" aria-label="Full screen" title="Full screen" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize size-4" aria-hidden="true"><path d="M8 3H5a2 2 0 0 0-2 2v3"></path><path d="M21 8V5a2 2 0 0 0-2-2h-3"></path><path d="M3 16v3a2 2 0 0 0 2 2h3"></path><path d="M16 21h3a2 2 0 0 0 2-2v-3"></path></svg></button></div></div></div><div class="mt-12 grid gap-10 md:mt-20 md:grid-cols-[3fr_2fr] md:gap-12"><div class="hidden md:block"><div class="sticky top-20 flex h-[calc(100vh-7rem)] max-h-[760px] items-center"><div role="img" aria-label="KeepReap extension toolbar and Side Panel while reading" data-scene="highlight" class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle group/stage relative w-full overflow-hidden rounded-xl border shadow-sm ring-1"><div class="border-brand-border-subtle bg-brand-surface flex items-center gap-2 border-b px-3 py-2"><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><div class="border-brand-border-subtle bg-brand-bg text-brand-text-3 ml-3 flex-1 truncate rounded-full border px-3 py-1 text-[10px]">https://keepreap.com</div></div><div class="relative flex min-h-[440px]"><div class="relative flex-1 px-6 py-8 transition-[margin-right] duration-300 group-data-[scene=sidepanel]/stage:mr-[280px] group-data-[scene=source]/stage:mr-[280px] motion-reduce:transition-none"><div class="text-brand-text-1 font-serif text-lg font-medium leading-snug">
2791How reading rewires the way we remember</div><div class="text-brand-text-2 mt-4 space-y-3 text-sm leading-relaxed"><p>Memory is not a recording device. It is a quiet rewrite of what we already half-believed.</p><p class="relative">The page in front of you is <span class="bg-brand-warning-surface text-brand-text-1 rounded px-1 py-0.5 transition-opacity duration-200 group-data-[scene=toolbar]/stage:opacity-80 group-data-[scene=sidepanel]/stage:opacity-60 group-data-[scene=source]/stage:opacity-60 motion-reduce:transition-none">a quiet rewrite of what we already half-believed</span> — and that is the line worth keeping.<span class="absolute left-1/2 top-full z-10 mt-2 -translate-x-1/2 translate-y-1 opacity-0 transition-[opacity,transform] duration-200 group-data-[scene=toolbar]/stage:translate-y-0 group-data-[scene=toolbar]/stage:opacity-100 motion-reduce:transition-none"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-0.5 rounded-full p-1 shadow-md ring-1"><span aria-hidden="true" class="text-brand-text-3 inline-flex h-7 w-4 items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 items-center justify-center rounded-full"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-r1" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2792<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 1329.41 1271.8 1289.75L1169.1 1167.54L10
279255.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-r1)"></path></g>
2793</svg></span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3.5 w-3.5"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3.5 w-3.5"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-3.5 w-3.5"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-3.5 w-3.5"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume2 h-3.5 w-3.5"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><path d="M16 9a5 5 0 0 1 0 6"></path><path d="M19.364 18.364a9 9 0 0 0 0-12.728"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-right h-3.5 w-3.5"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M15 3v18"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin h-3.5 w-3.5"><path d="M12 17v5"></path><path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7
2793a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path></svg></span></span></span></p><p>What stays with you is not the whole page, but a smaller line you happened to underline.</p><p>Most words slip away the day after you read them — unless something brings them back.</p><p>We talk about reading as if it were storage. It isn't. It is a slower, stranger thing — a sieve that keeps the shape and lets the substance pass.</p><p>What returns to you weeks later is not the page you read, but the line you bothered to mark.</p></div><div aria-hidden="true" class="from-brand-bg pointer-events-none absolute inset-x-0 bottom-0 h-20 bg-gradient-to-t to-transparent"></div></div><div class="border-brand-border-subtle bg-brand-surface absolute inset-y-0 right-0 flex flex-col border-l w-[280px] translate-x-full transition-transform duration-300 group-data-[scene=sidepanel]/stage:translate-x-0 group-data-[scene=source]/stage:translate-x-0 motion-reduce:transition-none"><div class="border-brand-border-subtle bg-brand-bg flex items-center gap-1.5 border-b px-3 py-2"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-r2" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2794<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 1329.41 1271.8 1289.75L1169.1 1167.54L10
279455.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-r2)"></path></g>
2795</svg><span class="text-brand-text-1 text-[11px] font-semibold">KeepReap</span><span class="ml-auto flex items-center gap-1"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12 17v5"></path><path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-log-out text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"></path><polyline points="16 17 21 12 16 7"></polyline><line x1="21" x2="9" y1="12" y2="12"></line></svg></span></div><div class="border-brand-border-subtle bg-brand-bg space-y-2 border-b p-3"><div class="rounded-md border px-2 py-3 text-[10px] transition-colors duration-300 border-brand-border-subtle bg-brand-surface text-brand-text-3 motion-reduce:transition-none">Paste, type, or drag any text…</div><div class="flex flex-wrap items-center gap-1"><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-2.5 w-2.5"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-2.5 w-2.5"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-2.5 w-2.5"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg>Save</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-2.5 w-2.5"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy</span></div></div><div class="bg-brand-surface flex-1 p-3"><div class="flex items-center justify-between"><span class="text-brand-text-3 text-[10px] font-semibold uppercase tracking-wider">Recent</span><span class="text-brand-text-3 inline-flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-refresh-cw h-2.5 w-2.5" aria-hidden="true"><path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path><path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"></path><path d="M8 16H3v5"></path></svg>Open Inbox →</span></div><div class="mt-2 space-y-2"><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>TRANSLATE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>
2795IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">a quiet rewrite of what we already half-believed</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>IMPROVE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">Memory is not a recording device.</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>TRANSLATE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">the line worth keeping</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div></div></div></div><svg aria-hidden="true" class="pointer-events-none absolute inset-0 z-20 h-full w-full opacity-0 transition-opacity duration-300 group-data-[scene=source]/stage:opacity-100 motion-reduce:transition-none" viewBox="0 0 100 100" preserveAspectRatio="none"><path d="M 28 33 C 42 2, 60 2, 73 11" class="text-brand-primary/55 fill-none stroke-current [stroke-dasharray:120] [stroke-dashoffset:120] transition-[stroke-dashoffset] delay-100 duration-500 group-data-[scene=source]/stage:[stroke-dashoffset:0] motion-reduce:transition-none group-data-[scene=source]/stage:motion-reduce:[stroke-dashoffset:0]" stroke-width="0.7" stroke-linecap="round"></path></svg><svg aria-hidden="true" class="text-brand-primary/80 pointer-events-none absolute z-30 h-8 w-8 -translate-x-1/2 -translate-y-1/2 left-[73%] top-[11%] rotate-[25deg] opacity-0 transition-opacity delay-500 duration-200 group-data-[scene=source]/stage:opacity-100 motion-reduce:transition-none" viewBox="0 0 16 16"><path d="M 3 4 Q 8 6, 14 8 Q 8 10, 3 12" class="fill-none stroke-current" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"></path></svg></div></div></div></div><div class="md:flex md:flex-col"><div class="flex flex-col py-12 md:py-20 min-h-[60vh] justify-center md:min-h-[70vh]"><div class="mb-6 md:hidden"><div aria-hidden="true" data-scene="highlight" class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle group/stage relative w-full overflow-hidden rounded-xl border shadow-sm ring-1 max-h-[360px]"><div class="border-brand-border-subtle bg-brand-surface flex items-center gap-2 border-b px-3 py-2"><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><div class="border-brand-border-subtle bg-brand-bg text-brand-text-3 ml-3 flex-1 truncate rounded-full border px-3 py-1 text-[10px]">https://keepreap.com</div></div><div class="relative flex min-h-[280px]"><div class="relative flex-1 px-6 py-8 transition-[margin-right] duration-300 group-data-[scene=sidepanel]/stage:mr-[280px] group-data-[scene=source]/stage:mr-[280px] group-data-[scene=sidepanel]/stage:!mr-[55%] group-data-[scene=source]/stage:!mr-[55%] motion-reduce:transition-none"><div class="text-brand-text-1 font-serif text-lg font-medium leading-snug">
2795How reading rewires the way we remember</div><div class="text-brand-text-2 mt-4 space-y-3 text-sm leading-relaxed"><p>Memory is not a recording device. It is a quiet rewrite of what we already half-believed.</p><p class="relative">The page in front of you is <span class="bg-brand-warning-surface text-brand-text-1 rounded px-1 py-0.5 transition-opacity duration-200 group-data-[scene=toolbar]/stage:opacity-80 group-data-[scene=sidepanel]/stage:opacity-60 group-data-[scene=source]/stage:opacity-60 motion-reduce:transition-none">a quiet rewrite of what we already half-believed</span> — and that is the line worth keeping.<span class="absolute left-1/2 top-full z-10 mt-2 -translate-x-1/2 translate-y-1 opacity-0 transition-[opacity,transform] duration-200 group-data-[scene=toolbar]/stage:translate-y-0 group-data-[scene=toolbar]/stage:opacity-100 motion-reduce:transition-none"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-0.5 rounded-full p-1 shadow-md ring-1"><span aria-hidden="true" class="text-brand-text-3 inline-flex h-7 w-4 items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 items-center justify-center rounded-full"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-r3" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2796<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 1329.41 1271.8 1289.75L1169.1 1167.54L10
279655.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-r3)"></path></g>
2797</svg></span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3.5 w-3.5"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3.5 w-3.5"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-3.5 w-3.5"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-3.5 w-3.5"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume2 h-3.5 w-3.5"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><path d="M16 9a5 5 0 0 1 0 6"></path><path d="M19.364 18.364a9 9 0 0 0 0-12.728"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-right h-3.5 w-3.5"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M15 3v18"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin h-3.5 w-3.5"><path d="M12 17v5"></path><path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7
2797a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path></svg></span></span></span></p><p>What stays with you is not the whole page, but a smaller line you happened to underline.</p><p>Most words slip away the day after you read them — unless something brings them back.</p><p>We talk about reading as if it were storage. It isn't. It is a slower, stranger thing — a sieve that keeps the shape and lets the substance pass.</p><p>What returns to you weeks later is not the page you read, but the line you bothered to mark.</p></div><div aria-hidden="true" class="from-brand-bg pointer-events-none absolute inset-x-0 bottom-0 h-20 bg-gradient-to-t to-transparent"></div></div><div class="border-brand-border-subtle bg-brand-surface absolute inset-y-0 right-0 flex flex-col border-l w-[55%] translate-x-full transition-transform duration-300 group-data-[scene=sidepanel]/stage:translate-x-0 group-data-[scene=source]/stage:translate-x-0 motion-reduce:transition-none"><div class="border-brand-border-subtle bg-brand-bg flex items-center gap-1.5 border-b px-3 py-2"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-r4" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2798<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 1329.41 1271.8 1289.75L1169.1 1167.54L10
279855.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-r4)"></path></g>
2799</svg><span class="text-brand-text-1 text-[11px] font-semibold">KeepReap</span><span class="ml-auto flex items-center gap-1"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12 17v5"></path><path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-log-out text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"></path><polyline points="16 17 21 12 16 7"></polyline><line x1="21" x2="9" y1="12" y2="12"></line></svg></span></div><div class="border-brand-border-subtle bg-brand-bg space-y-2 border-b p-3"><div class="rounded-md border px-2 py-3 text-[10px] transition-colors duration-300 border-brand-border-subtle bg-brand-surface text-brand-text-3 motion-reduce:transition-none">Paste, type, or drag any text…</div><div class="flex flex-wrap items-center gap-1"><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-2.5 w-2.5"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-2.5 w-2.5"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-2.5 w-2.5"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg>Save</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-2.5 w-2.5"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy</span></div></div><div class="bg-brand-surface flex-1 p-3"><div class="flex items-center justify-between"><span class="text-brand-text-3 text-[10px] font-semibold uppercase tracking-wider">Recent</span><span class="text-brand-text-3 inline-flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-refresh-cw h-2.5 w-2.5" aria-hidden="true"><path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path><path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"></path><path d="M8 16H3v5"></path></svg>Open Inbox →</span></div><div class="mt-2 space-y-2"><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>TRANSLATE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>
2799IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">a quiet rewrite of what we already half-believed</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>IMPROVE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">Memory is not a recording device.</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>TRANSLATE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">the line worth keeping</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div></div></div></div><svg aria-hidden="true" class="pointer-events-none absolute inset-0 z-20 h-full w-full opacity-0 transition-opacity duration-300 group-data-[scene=source]/stage:opacity-100 motion-reduce:transition-none" viewBox="0 0 100 100" preserveAspectRatio="none"><path d="M 28 33 C 42 2, 60 2, 73 11" class="text-brand-primary/55 fill-none stroke-current [stroke-dasharray:120] [stroke-dashoffset:120] transition-[stroke-dashoffset] delay-100 duration-500 group-data-[scene=source]/stage:[stroke-dashoffset:0] motion-reduce:transition-none group-data-[scene=source]/stage:motion-reduce:[stroke-dashoffset:0]" stroke-width="0.7" stroke-linecap="round"></path></svg><svg aria-hidden="true" class="text-brand-primary/80 pointer-events-none absolute z-30 h-8 w-8 -translate-x-1/2 -translate-y-1/2 left-[73%] top-[11%] rotate-[25deg] opacity-0 transition-opacity delay-500 duration-200 group-data-[scene=source]/stage:opacity-100 motion-reduce:transition-none" viewBox="0 0 16 16"><path d="M 3 4 Q 8 6, 14 8 Q 8 10, 3 12" class="fill-none stroke-current" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"></path></svg></div></div></div><div class=""><h3 class="text-brand-text-1 font-serif text-2xl font-medium leading-tight md:text-3xl">Read first. Mark what stays.</h3><p class="text-brand-text-2 mt-4 text-base leading-relaxed md:text-lg md:leading-relaxed">Select any sentence with your mouse. Your reading position stays exactly where it was — no scroll jump, no new tab, no popup stealing focus. The page itself remembers what you marked, even after you've closed the article and walked away.</p><ul class="text-brand-text-2 mt-4 list-none space-y-2 text-sm leading-relaxed md:text-base"><li><strong class="text-brand-text-1 font-semibold">
2799Works anywhere</strong> on the web — any article, any page.</li><li><strong class="text-brand-text-1 font-semibold">Mark persists</strong> across sessions — close and come back tomorrow.</li><li><strong class="text-brand-text-1 font-semibold">No login wall</strong> — sign in only when you save.</li></ul></div></div><div class="flex flex-col py-12 md:py-20 min-h-[60vh] justify-center md:min-h-[70vh]"><div class="mb-6 md:hidden"><div aria-hidden="true" data-scene="toolbar" class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle group/stage relative w-full overflow-hidden rounded-xl border shadow-sm ring-1 max-h-[360px]"><div class="border-brand-border-subtle bg-brand-surface flex items-center gap-2 border-b px-3 py-2"><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><div class="border-brand-border-subtle bg-brand-bg text-brand-text-3 ml-3 flex-1 truncate rounded-full border px-3 py-1 text-[10px]">https://keepreap.com</div></div><div class="relative flex min-h-[280px]"><div class="relative flex-1 px-6 py-8 transition-[margin-right] duration-300 group-data-[scene=sidepanel]/stage:mr-[280px] group-data-[scene=source]/stage:mr-[280px] group-data-[scene=sidepanel]/stage:!mr-[55%] group-data-[scene=source]/stage:!mr-[55%] motion-reduce:transition-none"><div class="text-brand-text-1 font-serif text-lg font-medium leading-snug">How reading rewires the way we remember</div><div class="text-brand-text-2 mt-4 space-y-3 text-sm leading-relaxed"><p>Memory is not a recording device. It is a quiet rewrite of what we already half-believed.</p><p class="relative">The page in front of you is <span class="bg-brand-warning-surface text-brand-text-1 rounded px-1 py-0.5 transition-opacity duration-200 group-data-[scene=toolbar]/stage:opacity-80 group-data-[scene=sidepanel]/stage:opacity-60 group-data-[scene=source]/stage:opacity-60 motion-reduce:transition-none">a quiet rewrite of what we already half-believed</span> — and that is the line worth keeping.<span class="absolute left-1/2 top-full z-10 mt-2 -translate-x-1/2 translate-y-1 opacity-0 transition-[opacity,transform] duration-200 group-data-[scene=toolbar]/stage:translate-y-0 group-data-[scene=toolbar]/stage:opacity-100 motion-reduce:transition-none"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-0.5 rounded-full p-1 shadow-md ring-1"><span aria-hidden="true" class="text-brand-text-3 inline-flex h-7 w-4 items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 items-center justify-center rounded-full"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-r5" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2800<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 
28001329.41 1271.8 1289.75L1169.1 1167.54L1055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-r5)"></path></g>
2801</svg></span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3.5 w-3.5"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3.5 w-3.5"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-3.5 w-3.5"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-3.5 w-3.5"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume2 h-3.5 w-3.5"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><path d="M16 9a5 5 0 0 1 0 6"></path><path d="M19.364 18.364a9 9 0 0 0 0-12.728"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-right h-3.5 w-3.5"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M15 3v18"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin h-3.5 w-3.5"><path d="M12 17v5"></path><path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7
2801a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path></svg></span></span></span></p><p>What stays with you is not the whole page, but a smaller line you happened to underline.</p><p>Most words slip away the day after you read them — unless something brings them back.</p><p>We talk about reading as if it were storage. It isn't. It is a slower, stranger thing — a sieve that keeps the shape and lets the substance pass.</p><p>What returns to you weeks later is not the page you read, but the line you bothered to mark.</p></div><div aria-hidden="true" class="from-brand-bg pointer-events-none absolute inset-x-0 bottom-0 h-20 bg-gradient-to-t to-transparent"></div></div><div class="border-brand-border-subtle bg-brand-surface absolute inset-y-0 right-0 flex flex-col border-l w-[55%] translate-x-full transition-transform duration-300 group-data-[scene=sidepanel]/stage:translate-x-0 group-data-[scene=source]/stage:translate-x-0 motion-reduce:transition-none"><div class="border-brand-border-subtle bg-brand-bg flex items-center gap-1.5 border-b px-3 py-2"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-r6" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2802<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 1329.41 1271.8 1289.75L1169.1 1167.54L10
280255.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-r6)"></path></g>
2803</svg><span class="text-brand-text-1 text-[11px] font-semibold">KeepReap</span><span class="ml-auto flex items-center gap-1"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12 17v5"></path><path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-log-out text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"></path><polyline points="16 17 21 12 16 7"></polyline><line x1="21" x2="9" y1="12" y2="12"></line></svg></span></div><div class="border-brand-border-subtle bg-brand-bg space-y-2 border-b p-3"><div class="rounded-md border px-2 py-3 text-[10px] transition-colors duration-300 border-brand-border-subtle bg-brand-surface text-brand-text-3 motion-reduce:transition-none">Paste, type, or drag any text…</div><div class="flex flex-wrap items-center gap-1"><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-2.5 w-2.5"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-2.5 w-2.5"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-2.5 w-2.5"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg>Save</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-2.5 w-2.5"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy</span></div></div><div class="bg-brand-surface flex-1 p-3"><div class="flex items-center justify-between"><span class="text-brand-text-3 text-[10px] font-semibold uppercase tracking-wider">Recent</span><span class="text-brand-text-3 inline-flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-refresh-cw h-2.5 w-2.5" aria-hidden="true"><path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path><path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"></path><path d="M8 16H3v5"></path></svg>Open Inbox →</span></div><div class="mt-2 space-y-2"><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>TRANSLATE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>
2803IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">a quiet rewrite of what we already half-believed</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>IMPROVE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">Memory is not a recording device.</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>TRANSLATE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">the line worth keeping</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div></div></div></div><svg aria-hidden="true" class="pointer-events-none absolute inset-0 z-20 h-full w-full opacity-0 transition-opacity duration-300 group-data-[scene=source]/stage:opacity-100 motion-reduce:transition-none" viewBox="0 0 100 100" preserveAspectRatio="none"><path d="M 28 33 C 42 2, 60 2, 73 11" class="text-brand-primary/55 fill-none stroke-current [stroke-dasharray:120] [stroke-dashoffset:120] transition-[stroke-dashoffset] delay-100 duration-500 group-data-[scene=source]/stage:[stroke-dashoffset:0] motion-reduce:transition-none group-data-[scene=source]/stage:motion-reduce:[stroke-dashoffset:0]" stroke-width="0.7" stroke-linecap="round"></path></svg><svg aria-hidden="true" class="text-brand-primary/80 pointer-events-none absolute z-30 h-8 w-8 -translate-x-1/2 -translate-y-1/2 left-[73%] top-[11%] rotate-[25deg] opacity-0 transition-opacity delay-500 duration-200 group-data-[scene=source]/stage:opacity-100 motion-reduce:transition-none" viewBox="0 0 16 16"><path d="M 3 4 Q 8 6, 14 8 Q 8 10, 3 12" class="fill-none stroke-current" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"></path></svg></div></div></div><div class=""><h3 class="text-brand-text-1 font-serif text-2xl font-medium leading-tight md:text-3xl">A bar, where the sentence is.</h3><p class="text-brand-text-2 mt-4 text-base leading-relaxed md:text-lg md:leading-relaxed">A floating bar surfaces right beside your selection — Translate, Improve, Save, Copy, Speak. One tap acts on the sentence. No menus to navigate, no tab switches, no breaking the rhythm of the paragraph you were halfway through.</p><ul class="text-brand-text-2 mt-4 list-none space-y-2 text-sm leading-relaxed md:text-base"><li><strong class="text-brand-text-1 font-semibold">Translate</strong> the selection into your language, inline — no popup, no tab switch.</li><li><strong class="text-brand-text-1 font-semibold">Improve</strong> the wording with an AI rewrite you can accept, tweak, or discard.</li><li><strong class="text-brand-text-1 font-semibold">Save</strong> the sentence to your library with the source URL attached automatically.</li><li><strong class="text-brand-text-1 font-semibold">Copy</strong> the text to your clipboard, formatted clean and ready to paste anywhere.</li><li><strong class="text-brand-text-1 font-semibold">Speak</strong> the line out loud with built-in TTS, in your chosen voice and speed.</li><li><strong class="text-brand-text-1 font-semibold">Side Panel</strong> opens a workspace right beside the article — composer and Sparks.</li><li><strong class="text-brand-text-1 font-semibold">Pin</strong> the capture to your pinboard for the lines you want to revisit fast.</li></ul></div></div><div class="flex flex-col py-12 md:py-20 min-h-[60vh] justify-center md:min-h-[70vh]"><div class="mb-6 md:hidden"><div aria-hidden="true" data-scene="sidepanel" class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle group/stage relative w-full overflow-hidden rounded-xl border shadow-sm ring-1 max-h-[360px]"><div class="border-brand-border-subtle bg-brand-surface flex items-center gap-2 border-b px-3 py-2"><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><div class="border-brand-border-subtle bg-brand-bg text-brand-text-3 ml-3 flex-1 truncate rounded-full border px-3 py-1 text-[10px]">https://keepreap.com</div></div><div class="relative flex min-h-[280px]"><div class="relative flex-1 px-6 py-8 transition-[margin-right] duration-300 group-data-[scene=sidepanel]/stage:mr-[280px] group-data-[scene=source]/stage:mr-[280px] group-data-[scene=sidepanel]/stage:!mr-[55%] group-data-[scene=source]/stage:!mr-[55%] motion-reduce:transition-none"><div class="text-brand-text-1 font-serif text-lg font-medium leading-snug">
2803How reading rewires the way we remember</div><div class="text-brand-text-2 mt-4 space-y-3 text-sm leading-relaxed"><p>Memory is not a recording device. It is a quiet rewrite of what we already half-believed.</p><p class="relative">The page in front of you is <span class="bg-brand-warning-surface text-brand-text-1 rounded px-1 py-0.5 transition-opacity duration-200 group-data-[scene=toolbar]/stage:opacity-80 group-data-[scene=sidepanel]/stage:opacity-60 group-data-[scene=source]/stage:opacity-60 motion-reduce:transition-none">a quiet rewrite of what we already half-believed</span> — and that is the line worth keeping.<span class="absolute left-1/2 top-full z-10 mt-2 -translate-x-1/2 translate-y-1 opacity-0 transition-[opacity,transform] duration-200 group-data-[scene=toolbar]/stage:translate-y-0 group-data-[scene=toolbar]/stage:opacity-100 motion-reduce:transition-none"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-0.5 rounded-full p-1 shadow-md ring-1"><span aria-hidden="true" class="text-brand-text-3 inline-flex h-7 w-4 items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 items-center justify-center rounded-full"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-r7" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2804<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 1329.41 1271.8 1289.75L1169.1 1167.54L10
280455.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-r7)"></path></g>
2805</svg></span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3.5 w-3.5"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3.5 w-3.5"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-3.5 w-3.5"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-3.5 w-3.5"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume2 h-3.5 w-3.5"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><path d="M16 9a5 5 0 0 1 0 6"></path><path d="M19.364 18.364a9 9 0 0 0 0-12.728"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-right h-3.5 w-3.5"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M15 3v18"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin h-3.5 w-3.5"><path d="M12 17v5"></path><path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7
2805a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path></svg></span></span></span></p><p>What stays with you is not the whole page, but a smaller line you happened to underline.</p><p>Most words slip away the day after you read them — unless something brings them back.</p><p>We talk about reading as if it were storage. It isn't. It is a slower, stranger thing — a sieve that keeps the shape and lets the substance pass.</p><p>What returns to you weeks later is not the page you read, but the line you bothered to mark.</p></div><div aria-hidden="true" class="from-brand-bg pointer-events-none absolute inset-x-0 bottom-0 h-20 bg-gradient-to-t to-transparent"></div></div><div class="border-brand-border-subtle bg-brand-surface absolute inset-y-0 right-0 flex flex-col border-l w-[55%] translate-x-full transition-transform duration-300 group-data-[scene=sidepanel]/stage:translate-x-0 group-data-[scene=source]/stage:translate-x-0 motion-reduce:transition-none"><div class="border-brand-border-subtle bg-brand-bg flex items-center gap-1.5 border-b px-3 py-2"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-r8" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2806<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 1329.41 1271.8 1289.75L1169.1 1167.54L10
280655.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-r8)"></path></g>
2807</svg><span class="text-brand-text-1 text-[11px] font-semibold">KeepReap</span><span class="ml-auto flex items-center gap-1"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12 17v5"></path><path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-log-out text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"></path><polyline points="16 17 21 12 16 7"></polyline><line x1="21" x2="9" y1="12" y2="12"></line></svg></span></div><div class="border-brand-border-subtle bg-brand-bg space-y-2 border-b p-3"><div class="rounded-md border px-2 py-3 text-[10px] transition-colors duration-300 border-brand-border-subtle bg-brand-surface text-brand-text-3 motion-reduce:transition-none">Paste, type, or drag any text…</div><div class="flex flex-wrap items-center gap-1"><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-2.5 w-2.5"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-2.5 w-2.5"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-2.5 w-2.5"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg>Save</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-2.5 w-2.5"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy</span></div></div><div class="bg-brand-surface flex-1 p-3"><div class="flex items-center justify-between"><span class="text-brand-text-3 text-[10px] font-semibold uppercase tracking-wider">Recent</span><span class="text-brand-text-3 inline-flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-refresh-cw h-2.5 w-2.5" aria-hidden="true"><path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path><path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"></path><path d="M8 16H3v5"></path></svg>Open Inbox →</span></div><div class="mt-2 space-y-2"><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>TRANSLATE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>
2807IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">a quiet rewrite of what we already half-believed</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>IMPROVE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">Memory is not a recording device.</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>TRANSLATE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">the line worth keeping</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div></div></div></div><svg aria-hidden="true" class="pointer-events-none absolute inset-0 z-20 h-full w-full opacity-0 transition-opacity duration-300 group-data-[scene=source]/stage:opacity-100 motion-reduce:transition-none" viewBox="0 0 100 100" preserveAspectRatio="none"><path d="M 28 33 C 42 2, 60 2, 73 11" class="text-brand-primary/55 fill-none stroke-current [stroke-dasharray:120] [stroke-dashoffset:120] transition-[stroke-dashoffset] delay-100 duration-500 group-data-[scene=source]/stage:[stroke-dashoffset:0] motion-reduce:transition-none group-data-[scene=source]/stage:motion-reduce:[stroke-dashoffset:0]" stroke-width="0.7" stroke-linecap="round"></path></svg><svg aria-hidden="true" class="text-brand-primary/80 pointer-events-none absolute z-30 h-8 w-8 -translate-x-1/2 -translate-y-1/2 left-[73%] top-[11%] rotate-[25deg] opacity-0 transition-opacity delay-500 duration-200 group-data-[scene=source]/stage:opacity-100 motion-reduce:transition-none" viewBox="0 0 16 16"><path d="M 3 4 Q 8 6, 14 8 Q 8 10, 3 12" class="fill-none stroke-current" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"></path></svg></div></div></div><div class=""><h3 class="text-brand-text-1 font-serif text-2xl font-medium leading-tight md:text-3xl">Open the panel without leaving the page.</h3><p class="text-brand-text-2 mt-4 text-base leading-relaxed md:text-lg md:leading-relaxed">Need more room than a popup gives you? Open the side panel beside the article. Your composer and your Sparks notepad are right there. The article still scrolls underneath, your place untouched.</p><ul class="text-brand-text-2 mt-4 list-none space-y-2 text-sm leading-relaxed md:text-base"><li><strong class="text-brand-text-1 font-semibold">Composer</strong> ready for any text — paste, type, or drag it in.</li><li><strong class="text-brand-text-1 font-semibold">Sparks</strong> for a quick note or image you want to sort out later.</li></ul></div></div><div class="flex flex-col py-12 md:py-20 min-h-[80vh] justify-center md:min-h-[170vh] md:justify-start"><div class="mb-6 md:hidden"><div aria-hidden="true" data-scene="source" class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle group/stage relative w-full overflow-hidden rounded-xl border shadow-sm ring-1 max-h-[360px]"><div class="border-brand-border-subtle bg-brand-surface flex items-center gap-2 border-b px-3 py-2"><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2.5 w-2.5 rounded-full" aria-hidden="true"></span><div class="border-brand-border-subtle bg-brand-bg text-brand-text-3 ml-3 flex-1 truncate rounded-full border px-3 py-1 text-[10px]">https://keepreap.com</div></div><div class="relative flex min-h-[280px]"><div class="relative flex-1 px-6 py-8 transition-[margin-right] duration-300 group-data-[scene=sidepanel]/stage:mr-[280px] group-data-[scene=source]/stage:mr-[280px] group-data-[scene=sidepanel]/stage:!mr-[55%] group-data-[scene=source]/stage:!mr-[55%] motion-reduce:transition-none"><div class="text-brand-text-1 font-serif text-lg font-medium leading-snug">
2807How reading rewires the way we remember</div><div class="text-brand-text-2 mt-4 space-y-3 text-sm leading-relaxed"><p>Memory is not a recording device. It is a quiet rewrite of what we already half-believed.</p><p class="relative">The page in front of you is <span class="bg-brand-warning-surface text-brand-text-1 rounded px-1 py-0.5 transition-opacity duration-200 group-data-[scene=toolbar]/stage:opacity-80 group-data-[scene=sidepanel]/stage:opacity-60 group-data-[scene=source]/stage:opacity-60 motion-reduce:transition-none">a quiet rewrite of what we already half-believed</span> — and that is the line worth keeping.<span class="absolute left-1/2 top-full z-10 mt-2 -translate-x-1/2 translate-y-1 opacity-0 transition-[opacity,transform] duration-200 group-data-[scene=toolbar]/stage:translate-y-0 group-data-[scene=toolbar]/stage:opacity-100 motion-reduce:transition-none"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-0.5 rounded-full p-1 shadow-md ring-1"><span aria-hidden="true" class="text-brand-text-3 inline-flex h-7 w-4 items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 items-center justify-center rounded-full"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-r9" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2808<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 1329.41 1271.8 1289.75L1169.1 1167.54L10
280855.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-r9)"></path></g>
2809</svg></span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3.5 w-3.5"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3.5 w-3.5"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-3.5 w-3.5"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-3.5 w-3.5"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume2 h-3.5 w-3.5"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><path d="M16 9a5 5 0 0 1 0 6"></path><path d="M19.364 18.364a9 9 0 0 0 0-12.728"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-right h-3.5 w-3.5"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M15 3v18"></path></svg></span><span aria-hidden="true" class="text-brand-text-1 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin h-3.5 w-3.5"><path d="M12 17v5"></path><path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7
2809a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path></svg></span></span></span></p><p>What stays with you is not the whole page, but a smaller line you happened to underline.</p><p>Most words slip away the day after you read them — unless something brings them back.</p><p>We talk about reading as if it were storage. It isn't. It is a slower, stranger thing — a sieve that keeps the shape and lets the substance pass.</p><p>What returns to you weeks later is not the page you read, but the line you bothered to mark.</p></div><div aria-hidden="true" class="from-brand-bg pointer-events-none absolute inset-x-0 bottom-0 h-20 bg-gradient-to-t to-transparent"></div></div><div class="border-brand-border-subtle bg-brand-surface absolute inset-y-0 right-0 flex flex-col border-l w-[55%] translate-x-full transition-transform duration-300 group-data-[scene=sidepanel]/stage:translate-x-0 group-data-[scene=source]/stage:translate-x-0 motion-reduce:transition-none"><div class="border-brand-border-subtle bg-brand-bg flex items-center gap-1.5 border-b px-3 py-2"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-ra" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2810<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 1329.41 1271.8 1289.75L1169.1 1167.54L10
281055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-ra)"></path></g>
2811</svg><span class="text-brand-text-1 text-[11px] font-semibold">KeepReap</span><span class="ml-auto flex items-center gap-1"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12 17v5"></path><path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-log-out text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"></path><polyline points="16 17 21 12 16 7"></polyline><line x1="21" x2="9" y1="12" y2="12"></line></svg></span></div><div class="border-brand-border-subtle bg-brand-bg space-y-2 border-b p-3"><div class="rounded-md border px-2 py-3 text-[10px] transition-colors duration-300 border-brand-primary/40 bg-brand-bg text-brand-text-1 motion-reduce:transition-none">a quiet rewrite of what we already half-believed</div><div class="flex flex-wrap items-center gap-1"><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-2.5 w-2.5"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-2.5 w-2.5"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-2.5 w-2.5"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg>Save</span><span aria-hidden="true" class="border-brand-border-subtle text-brand-text-1 inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-2.5 w-2.5"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy</span></div></div><div class="bg-brand-surface flex-1 p-3"><div class="flex items-center justify-between"><span class="text-brand-text-3 text-[10px] font-semibold uppercase tracking-wider">Recent</span><span class="text-brand-text-3 inline-flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-refresh-cw h-2.5 w-2.5" aria-hidden="true"><path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path><path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"></path><path d="M8 16H3v5"></path></svg>Open Inbox →</span></div><div class="mt-2 space-y-2"><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>TRANSLATE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>
2811IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">a quiet rewrite of what we already half-believed</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>IMPROVE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">Memory is not a recording device.</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div><div class="border-brand-border-subtle bg-brand-bg rounded-md border p-2.5"><div class="text-brand-text-3 flex items-center gap-1.5 text-[9px] font-semibold tracking-wider"><span>TRANSLATE</span><span class="bg-brand-border-subtle h-2.5 w-px"></span><span>IN LIBRARY</span></div><p class="text-brand-text-1 mt-1.5 line-clamp-2 text-[11px] leading-snug">the line worth keeping</p><div class="text-brand-text-3 mt-2 flex items-center gap-1 text-[9px]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-link2 h-2.5 w-2.5" aria-hidden="true"><path d="M9 17H7A5 5 0 0 1 7 7h2"></path><path d="M15 7h2a5 5 0 1 1 0 10h-2"></path><line x1="8" x2="16" y1="12" y2="12"></line></svg><span class="truncate">keepreap.com</span></div></div></div></div></div><svg aria-hidden="true" class="pointer-events-none absolute inset-0 z-20 h-full w-full opacity-0 transition-opacity duration-300 group-data-[scene=source]/stage:opacity-100 motion-reduce:transition-none" viewBox="0 0 100 100" preserveAspectRatio="none"><path d="M 28 33 C 42 2, 60 2, 73 11" class="text-brand-primary/55 fill-none stroke-current [stroke-dasharray:120] [stroke-dashoffset:120] transition-[stroke-dashoffset] delay-100 duration-500 group-data-[scene=source]/stage:[stroke-dashoffset:0] motion-reduce:transition-none group-data-[scene=source]/stage:motion-reduce:[stroke-dashoffset:0]" stroke-width="0.7" stroke-linecap="round"></path></svg><svg aria-hidden="true" class="text-brand-primary/80 pointer-events-none absolute z-30 h-8 w-8 -translate-x-1/2 -translate-y-1/2 left-[73%] top-[11%] rotate-[25deg] opacity-0 transition-opacity delay-500 duration-200 group-data-[scene=source]/stage:opacity-100 motion-reduce:transition-none" viewBox="0 0 16 16"><path d="M 3 4 Q 8 6, 14 8 Q 8 10, 3 12" class="fill-none stroke-current" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"></path></svg></div></div></div><div class="md:sticky md:top-44"><h3 class="text-brand-text-1 font-serif text-2xl font-medium leading-tight md:text-3xl">Every line remembers where it came from.</h3><p class="text-brand-text-2 mt-4 text-base leading-relaxed md:text-lg md:leading-relaxed">Save a sentence and it lands in your composer with the source URL attached. Open it again later — to translate, rewrite, listen, or revisit — and the original page is always one click back. No orphan quotes, no forgotten context.</p><ul class="text-brand-text-2 mt-4 list-none space-y-2 text-sm leading-relaxed md:text-base"><li>Every capture carries its <strong class="text-brand-text-1 font-semibold">source URL</strong>, attached automatically.</li><li>Browse your library by <strong class="text-brand-text-1 font-semibold">domain</strong> — see which sites you read most.</li><li><strong class="text-brand-text-1 font-semibold">Frequency stats</strong>
2811 show which pages you keep returning to.</li><li><strong class="text-brand-text-1 font-semibold">One click</strong> back to the original article, anytime.</li></ul></div></div></div></div></div></section><section id="mac" data-testid="landing-mac-app" class="bg-brand-surface px-6 py-20 md:py-28"><div class="mx-auto max-w-[1500px]"><div class="mx-auto max-w-2xl text-center"><p class="text-brand-text-3 font-mono text-[11px] font-semibold uppercase tracking-[0.18em]">Also on macOS</p><h2 class="text-brand-text-1 mt-4 font-serif text-3xl font-medium tracking-tight md:text-5xl">Your reading doesn't stop at the browser</h2><p class="text-brand-text-2 mt-4 text-base leading-relaxed">KeepReap sits in your menu bar. Select text in any Mac app — a chat window, a PDF, your mail client, your editor — press ⌥D, and the same toolbar comes to it.</p></div><div class="mx-auto mt-12 max-w-5xl md:mt-16"><div data-testid="landing-video-mac" data-landing-video="" class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle relative w-full overflow-hidden rounded-xl border shadow-sm ring-1"><div class="bg-brand-surface-2 relative aspect-video w-full"><video src="/videos/keepreap-mac.mp4" poster="/videos/keepreap-mac.jpg" aria-label="Video: rewriting a message on the Mac with ⌥D" width="1920" height="1080" loop="" playsinline="" preload="none" class="absolute inset-0 h-full w-full object-cover cursor-pointer"></video></div><div data-testid="landing-video-controls" class="border-brand-border-subtle text-brand-text-1 flex items-center gap-1 border-t px-2 py-1.5 sm:gap-2"><button type="button" data-testid="landing-video-play" aria-label="Play" title="Play" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-play size-4" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg></button><span class="text-brand-text-2 hidden min-w-[5.5rem] text-center text-xs tabular-nums sm:inline">0:00 / 0:00</span><div role="slider" tabindex="0" aria-label="Video progress" aria-valuemin="0" aria-valuemax="0" aria-valuenow="0" aria-valuetext="0:00 / 0:00" class="focus-visible:ring-brand-text-1 flex h-6 min-w-0 flex-1 cursor-pointer items-center rounded-full focus-visible:outline-none focus-visible:ring-2"><div class="bg-brand-border relative h-1 w-full overflow-hidden rounded-full"><div data-testid="landing-video-progress" class="bg-brand-text-1 absolute inset-y-0 left-0" style="width: 0%;"></div></div></div><button type="button" data-testid="landing-video-sound" aria-label="Turn sound on" title="Turn sound on" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume-x size-4" aria-hidden="true"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><line x1="22" x2="16" y1="9" y2="15"></line><line x1="16" x2="22" y1="9" y2="15"></line></svg></button><button type="button" aria-label="Full screen" title="Full screen" class="hover:bg-brand-surface focus-visible:ring-brand-text-1 inline-flex size-8 shrink-0 items-center justify-center rounded-full transition-colors focus-visible:outline-none focus-visible:ring-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize size-4" aria-hidden="true"><path d="M8 3H5a2 2 0 0 0-2 2v3"></path><path d="M21 8V5a2 2 0 0 0-2-2h-3"></path><path d="M3 16v3a2 2 0 0 0 2 2h3"></path><path d="M16 21h3a2 2 0 0 0 2-2v-3"></path></svg></button></div></div></div><div class="mt-12 grid gap-10 md:mt-20 md:grid-cols-[3fr_2fr] md:gap-12"><div class="hidden md:block"><div class="sticky top-24">
2811<div role="img" aria-label="A Mac desktop with the KeepReap toolbar, its result bubble, and the translate window" data-scene="toolbar" class="border-brand-border-subtle bg-brand-surface-2 ring-brand-border-subtle group/stage relative w-full overflow-hidden rounded-xl border shadow-sm ring-1"><div class="border-brand-border-subtle bg-brand-bg flex items-center gap-3 border-b px-3 py-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-apple text-brand-text-2 h-3 w-3" aria-hidden="true"><path d="M12 20.94c1.5 0 2.75 1.06 4 1.06 3 0 6-8 6-12.22A4.91 4.91 0 0 0 17 5c-2.22 0-4 1.44-5 2-1-.56-2.78-2-5-2a4.9 4.9 0 0 0-5 4.78C2 14 5 22 8 22c1.25 0 2.5-1.06 4-1.06Z"></path><path d="M10 2c1 .5 2 2 2 5"></path></svg><span class="text-brand-text-1 text-[10px] font-semibold">Team Chat</span><span class="text-brand-text-3 hidden gap-3 text-[10px] sm:flex"><span>File</span><span>Edit</span><span>View</span></span><span class="ml-auto inline-flex items-center gap-2.5"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-rb" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2812<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 1329.41 1271.8 1289.75L1169.1 1167.54L10
281255.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-rb)"></path></g>
2813</svg><span class="text-brand-text-3 font-mono text-[10px]">9:41</span></span></div><div class="relative px-4 py-5 sm:px-7 sm:py-6 min-h-[560px]"><div class="border-brand-border-subtle bg-brand-bg rounded-lg border shadow-sm transition-opacity duration-300 group-data-[scene=split]/stage:opacity-40 group-data-[scene=window]/stage:opacity-40 motion-reduce:transition-none"><div class="border-brand-border-subtle flex items-center gap-1.5 border-b px-3 py-2"><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="text-brand-text-3 ml-2 truncate text-[10px]">#product-launch</span></div><div class="space-y-3 p-3.5"><div class="flex gap-2.5"><span aria-hidden="true" class="bg-brand-surface-2 border-brand-border-subtle mt-0.5 h-6 w-6 shrink-0 rounded-md border"></span><div class="min-w-0 flex-1"><p class="text-brand-text-1 text-[11px] font-semibold">Dana</p><div class="text-brand-text-2 mt-0.5 text-[11px] leading-relaxed">Pushed the copy changes — can someone check the release note?</div></div></div><div class="relative"><div class="flex gap-2.5"><span aria-hidden="true" class="bg-brand-surface-2 border-brand-border-subtle mt-0.5 h-6 w-6 shrink-0 rounded-md border"></span><div class="min-w-0 flex-1"><p class="text-brand-text-1 text-[11px] font-semibold">Priya</p><div class="text-brand-text-2 mt-0.5 text-[11px] leading-relaxed">Looks good, but <span class="bg-brand-warning-surface text-brand-text-1 rounded px-1 py-0.5">we should to discuss again about the rollout cadence</span> before Thursday.</div></div></div><div class="absolute left-9 top-full z-10 mt-2 flex flex-col items-start gap-1.5 transition-opacity duration-300 group-data-[scene=window]/stage:pointer-events-none group-data-[scene=window]/stage:opacity-0 group-data-[scene=split]/stage:pointer-events-none group-data-[scene=split]/stage:opacity-0 motion-reduce:transition-none"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-1 rounded-full py-1 pl-1.5 pr-2.5 shadow-lg ring-1"><span aria-hidden="true" class="text-brand-text-3 inline-flex items-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span aria-hidden="true" class="inline-flex items-center"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-rc" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2814<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 
28141329.41 1271.8 1289.75L1169.1 1167.54L1055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-rc)"></path></g>
2815</svg></span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3 w-3 shrink-0"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3 shrink-0"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-3 w-3 shrink-0"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg>Save</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-3 w-3 shrink-0"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume2 h-3 w-3 shrink-0"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><path d="M16 9a5 5 0 0 1 0 6"></path><path d="M19.364 18.364a9 9 0 0 0 0-12.728"></path></svg>Speak</span></span><span class="border-brand-border-subtle bg-brand-bg block w-[286px] overflow-hidden rounded-xl border shadow-xl origin-top scale-95 opacity-0 transition-[opacity,transform] duration-300 group-data-[scene=bubble]/stage:scale-100 group-data-[scene=bubble]/stage:opacity-100 motion-reduce:transition-none"><span class="border-brand-border-subtle relative flex items-center border-b px-2.5 py-1.5"><span class="text-brand-text-1 inline-flex items-center gap-1 text-[10px] font-semibold"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="text-brand-text-3 absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3 rotate-90"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span class="ml-auto inline-flex items-center gap-1.5"><span class="border-brand-border-subtle text-brand-text-3 rounded-full border px-1.5 py-px font-mono text-[8px]">9/10</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></span></span><span class="block p-2.5"><div class="flex items-center gap-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Original</span><span class="kr-score kr-score--good" aria-label="Sentence score 7 out of 10" data-testid="score-badge"><span aria-hidden="true">👍</span><span class="kr-score-text">Good 7 / 10</span></span></div><p class="bg-brand-surface text-brand-text-2 mt-1 rounded-lg px-2 py-1.5 text-[10px] leading-snug">
2815we should to discuss again about the rollout cadence</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Corrected</span></div><p class="bg-brand-success-surface text-brand-success mt-1 rounded-lg px-2 py-1.5 text-[10px] font-medium leading-snug">we should discuss the rollout cadence again</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">What changed</span></div><div class="border-brand-border-subtle text-brand-text-1 mt-1 border-l-2 pl-2 text-[10px] leading-snug"><p class="kr-diff"><span class="kr-diff-eq">we should </span><del class="kr-diff-del">to </del><span class="kr-diff-eq">discuss </span><del class="kr-diff-del">again about </del><span class="kr-diff-eq">the rollout cadence</span><ins class="kr-diff-ins"> again</ins></p></div></span></span></div></div></div></div><div class="absolute inset-x-8 top-[12%] z-20 sm:inset-x-16 pointer-events-none opacity-0 group-data-[scene=split]/stage:opacity-100 group-data-[scene=window]/stage:opacity-100"><div class="border-brand-border-subtle bg-brand-bg w-full overflow-hidden rounded-xl border shadow-2xl translate-y-3 opacity-0 transition-[opacity,transform] duration-300 group-data-[scene=window]/stage:translate-y-0 group-data-[scene=window]/stage:opacity-100 group-data-[scene=split]/stage:translate-y-0 group-data-[scene=split]/stage:opacity-100 motion-reduce:transition-none"><div class="flex items-center gap-2 px-3 py-2"><span class="inline-flex items-center gap-1.5" aria-hidden="true"><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span></span><span class="ml-auto inline-flex items-center gap-2"><span class="border-brand-border-subtle text-brand-text-3 rounded-full border px-1.5 py-px font-mono text-[9px]">9/10</span><span class="inline-flex h-5 w-5 items-center justify-center rounded-full transition-colors duration-300 motion-reduce:transition-none"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-columns2 h-3 w-3 text-brand-text-3" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M12 3v18"></path></svg></span><span class="bg-brand-surface-2 inline-flex h-5 w-5 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off text-brand-text-1 h-3 w-3 rotate-45" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg></span></div><div class="px-4"><p class="text-brand-text-1 text-[12px] leading-relaxed">we should to discuss again about the rollout cadence</p><p class="text-brand-text-3 mt-1 text-right font-mono text-[9px]">52 / 4000</p></div><div class="relative py-1"><span class="bg-brand-border-subtle block h-px w-full" aria-hidden="true"></span><span aria-hidden="true" class="bg-brand-border absolute left-1/2 top-1/2 h-1 w-8 -translate-x-1/2 -translate-y-1/2 roun
2815ded-full"></span></div><div class="px-4 pb-2 pt-2"><div class="flex items-center gap-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Original</span><span class="kr-score kr-score--good" aria-label="Sentence score 7 out of 10" data-testid="score-badge"><span aria-hidden="true">👍</span><span class="kr-score-text">Good 7 / 10</span></span></div><p class="bg-brand-surface text-brand-text-2 mt-1 rounded-lg px-2 py-1.5 text-[10px] leading-snug">we should to discuss again about the rollout cadence</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Corrected</span></div><p class="bg-brand-success-surface text-brand-success mt-1 rounded-lg px-2 py-1.5 text-[10px] font-medium leading-snug">we should discuss the rollout cadence again</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">What changed</span></div><div class="border-brand-border-subtle text-brand-text-1 mt-1 border-l-2 pl-2 text-[10px] leading-snug"><p class="kr-diff"><span class="kr-diff-eq">we should </span><del class="kr-diff-del">to </del><span class="kr-diff-eq">discuss </span><del class="kr-diff-del">again about </del><span class="kr-diff-eq">the rollout cadence</span><ins class="kr-diff-ins"> again</ins></p></div></div><div class="flex pb-3 pt-1 justify-center"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-1 rounded-full px-2 py-1 shadow-lg ring-1"><span class="text-brand-text-3 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3 w-3" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span class="bg-brand-surface-2 text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span class="text-brand-text-1 inline-flex items-center gap-1 text-[10px] font-semibold">Auto<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-repeat2 text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="m2 9 3-3 3 3"></path><path d="M13 18H7a2 2 0 0 1-2-2V6"></path><path d="m22 15-3 3-3-3"></path><path d="M11 6h6a2 2 0 0 1 2 2v10"></path></svg>English<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></span></span></div></div></div></div><span class="text-brand-text-3 absolute bottom-3 right-4 inline-flex items-center gap-1.5 text-[10px]"><span class="group-data-[scene=split]/stage:hidden group-data-[scene=window]/stage:hidden">Select, then press</span><span class="hidden group-data-[scene=split]/stage:inline group-data-[scene=window]/stage:inline">Or open the workbench with</span><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">⌥</span><span class="hidden group-data-[scene=split]/stage:inline group-data-[scene=window]/stage:inline"><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">⇧</span></span><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">D</span></span></div></div></div><div class="md:flex md:flex-col"><div class="flex flex-col py-12 md:py-20 min-h-[60vh] justify-center md:min-h-[70vh]"><div class="mb-6 md:hidden"><div aria-hidden="true" data-scene="toolbar" class="border-brand-border-subtle bg-brand-surface-2 ring-brand-border-subtle group/stage relative w-full overflow-hidden rounded-xl border shadow-sm ring-1"><div class="border-brand-border-subtle bg-brand-bg flex items-center gap-3 border-b px-3 py-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-apple text-brand-text-2 h-3 w-3" aria-hidden="true"><path d="M12 20.94c1.5 0 2.75 1.06 4 1.06 3 0 6-8 6-12.22A4.91 4.91 0 0 0 17 5c-2.22 0-4 1.44-5 2-1-.56-2.78-2-5-2a4.9 4.9 0 0 0-5 4.78C2 14 5 22 8 22c1.25 0 2.5-1.06 4-1.06Z"></path><path d="M10 2c1 .5 2 2 2 5"></path></svg><span class="text-brand-text-1 text-[10px] font-semibold">Team Chat</span><span class="text-brand-text-3 hidden gap-3 text-[10px] sm:flex"><span>File</span><span>Edit</span><span>View</span></span><span class="ml-auto inline-flex items-center gap-2.5"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-rd" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2816<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 
28161329.41 1271.8 1289.75L1169.1 1167.54L1055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-rd)"></path></g>
2817</svg><span class="text-brand-text-3 font-mono text-[10px]">9:41</span></span></div><div class="relative px-4 py-5 sm:px-7 sm:py-6 min-h-[420px]"><div class="border-brand-border-subtle bg-brand-bg rounded-lg border shadow-sm transition-opacity duration-300 group-data-[scene=split]/stage:opacity-40 group-data-[scene=window]/stage:opacity-40 motion-reduce:transition-none"><div class="border-brand-border-subtle flex items-center gap-1.5 border-b px-3 py-2"><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="text-brand-text-3 ml-2 truncate text-[10px]">#product-launch</span></div><div class="space-y-3 p-3.5"><div class="flex gap-2.5"><span aria-hidden="true" class="bg-brand-surface-2 border-brand-border-subtle mt-0.5 h-6 w-6 shrink-0 rounded-md border"></span><div class="min-w-0 flex-1"><p class="text-brand-text-1 text-[11px] font-semibold">Dana</p><div class="text-brand-text-2 mt-0.5 text-[11px] leading-relaxed">Pushed the copy changes — can someone check the release note?</div></div></div><div class="relative"><div class="flex gap-2.5"><span aria-hidden="true" class="bg-brand-surface-2 border-brand-border-subtle mt-0.5 h-6 w-6 shrink-0 rounded-md border"></span><div class="min-w-0 flex-1"><p class="text-brand-text-1 text-[11px] font-semibold">Priya</p><div class="text-brand-text-2 mt-0.5 text-[11px] leading-relaxed">Looks good, but <span class="bg-brand-warning-surface text-brand-text-1 rounded px-1 py-0.5">we should to discuss again about the rollout cadence</span> before Thursday.</div></div></div><div class="absolute left-9 top-full z-10 mt-2 flex flex-col items-start gap-1.5 transition-opacity duration-300 group-data-[scene=window]/stage:pointer-events-none group-data-[scene=window]/stage:opacity-0 group-data-[scene=split]/stage:pointer-events-none group-data-[scene=split]/stage:opacity-0 motion-reduce:transition-none"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-1 rounded-full py-1 pl-1.5 pr-2.5 shadow-lg ring-1"><span aria-hidden="true" class="text-brand-text-3 inline-flex items-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span aria-hidden="true" class="inline-flex items-center"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-re" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2818<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 
28181329.41 1271.8 1289.75L1169.1 1167.54L1055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-re)"></path></g>
2819</svg></span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3 w-3 shrink-0"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3 shrink-0"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-3 w-3 shrink-0"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg>Save</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-3 w-3 shrink-0"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume2 h-3 w-3 shrink-0"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><path d="M16 9a5 5 0 0 1 0 6"></path><path d="M19.364 18.364a9 9 0 0 0 0-12.728"></path></svg>Speak</span></span><span class="border-brand-border-subtle bg-brand-bg block w-[286px] overflow-hidden rounded-xl border shadow-xl origin-top scale-95 opacity-0 transition-[opacity,transform] duration-300 group-data-[scene=bubble]/stage:scale-100 group-data-[scene=bubble]/stage:opacity-100 motion-reduce:transition-none"><span class="border-brand-border-subtle relative flex items-center border-b px-2.5 py-1.5"><span class="text-brand-text-1 inline-flex items-center gap-1 text-[10px] font-semibold"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="text-brand-text-3 absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3 rotate-90"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span class="ml-auto inline-flex items-center gap-1.5"><span class="border-brand-border-subtle text-brand-text-3 rounded-full border px-1.5 py-px font-mono text-[8px]">9/10</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></span></span><span class="block p-2.5"><div class="flex items-center gap-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Original</span><span class="kr-score kr-score--good" aria-label="Sentence score 7 out of 10" data-testid="score-badge"><span aria-hidden="true">👍</span><span class="kr-score-text">Good 7 / 10</span></span></div><p class="bg-brand-surface text-brand-text-2 mt-1 rounded-lg px-2 py-1.5 text-[10px] leading-snug">
2819we should to discuss again about the rollout cadence</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Corrected</span></div><p class="bg-brand-success-surface text-brand-success mt-1 rounded-lg px-2 py-1.5 text-[10px] font-medium leading-snug">we should discuss the rollout cadence again</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">What changed</span></div><div class="border-brand-border-subtle text-brand-text-1 mt-1 border-l-2 pl-2 text-[10px] leading-snug"><p class="kr-diff"><span class="kr-diff-eq">we should </span><del class="kr-diff-del">to </del><span class="kr-diff-eq">discuss </span><del class="kr-diff-del">again about </del><span class="kr-diff-eq">the rollout cadence</span><ins class="kr-diff-ins"> again</ins></p></div></span></span></div></div></div></div><div class="absolute inset-x-8 top-[12%] z-20 sm:inset-x-16 pointer-events-none opacity-0 group-data-[scene=split]/stage:opacity-100 group-data-[scene=window]/stage:opacity-100"><div class="border-brand-border-subtle bg-brand-bg w-full overflow-hidden rounded-xl border shadow-2xl translate-y-3 opacity-0 transition-[opacity,transform] duration-300 group-data-[scene=window]/stage:translate-y-0 group-data-[scene=window]/stage:opacity-100 group-data-[scene=split]/stage:translate-y-0 group-data-[scene=split]/stage:opacity-100 motion-reduce:transition-none"><div class="flex items-center gap-2 px-3 py-2"><span class="inline-flex items-center gap-1.5" aria-hidden="true"><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span></span><span class="ml-auto inline-flex items-center gap-2"><span class="border-brand-border-subtle text-brand-text-3 rounded-full border px-1.5 py-px font-mono text-[9px]">9/10</span><span class="inline-flex h-5 w-5 items-center justify-center rounded-full transition-colors duration-300 motion-reduce:transition-none"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-columns2 h-3 w-3 text-brand-text-3" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M12 3v18"></path></svg></span><span class="bg-brand-surface-2 inline-flex h-5 w-5 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off text-brand-text-1 h-3 w-3 rotate-45" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg></span></div><div class="px-4"><p class="text-brand-text-1 text-[12px] leading-relaxed">we should to discuss again about the rollout cadence</p><p class="text-brand-text-3 mt-1 text-right font-mono text-[9px]">52 / 4000</p></div><div class="relative py-1"><span class="bg-brand-border-subtle block h-px w-full" aria-hidden="true"></span><span aria-hidden="true" class="bg-brand-border absolute left-1/2 top-1/2 h-1 w-8 -translate-x-1/2 -translate-y-1/2 roun
2819ded-full"></span></div><div class="px-4 pb-2 pt-2"><div class="flex items-center gap-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Original</span><span class="kr-score kr-score--good" aria-label="Sentence score 7 out of 10" data-testid="score-badge"><span aria-hidden="true">👍</span><span class="kr-score-text">Good 7 / 10</span></span></div><p class="bg-brand-surface text-brand-text-2 mt-1 rounded-lg px-2 py-1.5 text-[10px] leading-snug">we should to discuss again about the rollout cadence</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Corrected</span></div><p class="bg-brand-success-surface text-brand-success mt-1 rounded-lg px-2 py-1.5 text-[10px] font-medium leading-snug">we should discuss the rollout cadence again</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">What changed</span></div><div class="border-brand-border-subtle text-brand-text-1 mt-1 border-l-2 pl-2 text-[10px] leading-snug"><p class="kr-diff"><span class="kr-diff-eq">we should </span><del class="kr-diff-del">to </del><span class="kr-diff-eq">discuss </span><del class="kr-diff-del">again about </del><span class="kr-diff-eq">the rollout cadence</span><ins class="kr-diff-ins"> again</ins></p></div></div><div class="flex pb-3 pt-1 justify-center"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-1 rounded-full px-2 py-1 shadow-lg ring-1"><span class="text-brand-text-3 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3 w-3" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span class="bg-brand-surface-2 text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span class="text-brand-text-1 inline-flex items-center gap-1 text-[10px] font-semibold">Auto<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-repeat2 text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="m2 9 3-3 3 3"></path><path d="M13 18H7a2 2 0 0 1-2-2V6"></path><path d="m22 15-3 3-3-3"></path><path d="M11 6h6a2 2 0 0 1 2 2v10"></path></svg>English<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></span></span></div></div></div></div><span class="text-brand-text-3 absolute bottom-3 right-4 inline-flex items-center gap-1.5 text-[10px]"><span class="group-data-[scene=split]/stage:hidden group-data-[scene=window]/stage:hidden">Select, then press</span><span class="hidden group-data-[scene=split]/stage:inline group-data-[scene=window]/stage:inline">Or open the workbench with</span><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">⌥</span><span class="hidden group-data-[scene=split]/stage:inline group-data-[scene=window]/stage:inline"><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">⇧</span></span><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">D</span></span></div></div><div class=""><h3 class="text-brand-text-1 font-serif text-2xl font-medium leading-tight md:text-3xl">The toolbar comes to your text</h3><p class="text-brand-text-2 mt-4 text-base leading-relaxed md:text-lg md:leading-relaxed">Select in any Mac app — a chat window, a PDF, your mail client, your editor — and press ⌥D. Translate, Improve, Save, C
2819opy and Speak, the same actions you already use in Chrome.</p></div></div><div class="flex flex-col py-12 md:py-20 min-h-[60vh] justify-center md:min-h-[70vh]"><div class="mb-6 md:hidden"><div aria-hidden="true" data-scene="bubble" class="border-brand-border-subtle bg-brand-surface-2 ring-brand-border-subtle group/stage relative w-full overflow-hidden rounded-xl border shadow-sm ring-1"><div class="border-brand-border-subtle bg-brand-bg flex items-center gap-3 border-b px-3 py-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-apple text-brand-text-2 h-3 w-3" aria-hidden="true"><path d="M12 20.94c1.5 0 2.75 1.06 4 1.06 3 0 6-8 6-12.22A4.91 4.91 0 0 0 17 5c-2.22 0-4 1.44-5 2-1-.56-2.78-2-5-2a4.9 4.9 0 0 0-5 4.78C2 14 5 22 8 22c1.25 0 2.5-1.06 4-1.06Z"></path><path d="M10 2c1 .5 2 2 2 5"></path></svg><span class="text-brand-text-1 text-[10px] font-semibold">Team Chat</span><span class="text-brand-text-3 hidden gap-3 text-[10px] sm:flex"><span>File</span><span>Edit</span><span>View</span></span><span class="ml-auto inline-flex items-center gap-2.5"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-rf" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2820<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 1329.41 1271.8 1289.75L1169.1 1167.54L10
282055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-rf)"></path></g>
2821</svg><span class="text-brand-text-3 font-mono text-[10px]">9:41</span></span></div><div class="relative px-4 py-5 sm:px-7 sm:py-6 min-h-[420px]"><div class="border-brand-border-subtle bg-brand-bg rounded-lg border shadow-sm transition-opacity duration-300 group-data-[scene=split]/stage:opacity-40 group-data-[scene=window]/stage:opacity-40 motion-reduce:transition-none"><div class="border-brand-border-subtle flex items-center gap-1.5 border-b px-3 py-2"><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="text-brand-text-3 ml-2 truncate text-[10px]">#product-launch</span></div><div class="space-y-3 p-3.5"><div class="flex gap-2.5"><span aria-hidden="true" class="bg-brand-surface-2 border-brand-border-subtle mt-0.5 h-6 w-6 shrink-0 rounded-md border"></span><div class="min-w-0 flex-1"><p class="text-brand-text-1 text-[11px] font-semibold">Dana</p><div class="text-brand-text-2 mt-0.5 text-[11px] leading-relaxed">Pushed the copy changes — can someone check the release note?</div></div></div><div class="relative"><div class="flex gap-2.5"><span aria-hidden="true" class="bg-brand-surface-2 border-brand-border-subtle mt-0.5 h-6 w-6 shrink-0 rounded-md border"></span><div class="min-w-0 flex-1"><p class="text-brand-text-1 text-[11px] font-semibold">Priya</p><div class="text-brand-text-2 mt-0.5 text-[11px] leading-relaxed">Looks good, but <span class="bg-brand-warning-surface text-brand-text-1 rounded px-1 py-0.5">we should to discuss again about the rollout cadence</span> before Thursday.</div></div></div><div class="absolute left-9 top-full z-10 mt-2 flex flex-col items-start gap-1.5 transition-opacity duration-300 group-data-[scene=window]/stage:pointer-events-none group-data-[scene=window]/stage:opacity-0 group-data-[scene=split]/stage:pointer-events-none group-data-[scene=split]/stage:opacity-0 motion-reduce:transition-none"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-1 rounded-full py-1 pl-1.5 pr-2.5 shadow-lg ring-1"><span aria-hidden="true" class="text-brand-text-3 inline-flex items-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span aria-hidden="true" class="inline-flex items-center"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-rg" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2822<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 
28221329.41 1271.8 1289.75L1169.1 1167.54L1055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-rg)"></path></g>
2823</svg></span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3 w-3 shrink-0"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3 shrink-0"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-3 w-3 shrink-0"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg>Save</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-3 w-3 shrink-0"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume2 h-3 w-3 shrink-0"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><path d="M16 9a5 5 0 0 1 0 6"></path><path d="M19.364 18.364a9 9 0 0 0 0-12.728"></path></svg>Speak</span></span><span class="border-brand-border-subtle bg-brand-bg block w-[286px] overflow-hidden rounded-xl border shadow-xl origin-top scale-95 opacity-0 transition-[opacity,transform] duration-300 group-data-[scene=bubble]/stage:scale-100 group-data-[scene=bubble]/stage:opacity-100 motion-reduce:transition-none"><span class="border-brand-border-subtle relative flex items-center border-b px-2.5 py-1.5"><span class="text-brand-text-1 inline-flex items-center gap-1 text-[10px] font-semibold"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="text-brand-text-3 absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3 rotate-90"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span class="ml-auto inline-flex items-center gap-1.5"><span class="border-brand-border-subtle text-brand-text-3 rounded-full border px-1.5 py-px font-mono text-[8px]">9/10</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></span></span><span class="block p-2.5"><div class="flex items-center gap-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Original</span><span class="kr-score kr-score--good" aria-label="Sentence score 7 out of 10" data-testid="score-badge"><span aria-hidden="true">👍</span><span class="kr-score-text">Good 7 / 10</span></span></div><p class="bg-brand-surface text-brand-text-2 mt-1 rounded-lg px-2 py-1.5 text-[10px] leading-snug">
2823we should to discuss again about the rollout cadence</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Corrected</span></div><p class="bg-brand-success-surface text-brand-success mt-1 rounded-lg px-2 py-1.5 text-[10px] font-medium leading-snug">we should discuss the rollout cadence again</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">What changed</span></div><div class="border-brand-border-subtle text-brand-text-1 mt-1 border-l-2 pl-2 text-[10px] leading-snug"><p class="kr-diff"><span class="kr-diff-eq">we should </span><del class="kr-diff-del">to </del><span class="kr-diff-eq">discuss </span><del class="kr-diff-del">again about </del><span class="kr-diff-eq">the rollout cadence</span><ins class="kr-diff-ins"> again</ins></p></div></span></span></div></div></div></div><div class="absolute inset-x-8 top-[12%] z-20 sm:inset-x-16 pointer-events-none opacity-0 group-data-[scene=split]/stage:opacity-100 group-data-[scene=window]/stage:opacity-100"><div class="border-brand-border-subtle bg-brand-bg w-full overflow-hidden rounded-xl border shadow-2xl translate-y-3 opacity-0 transition-[opacity,transform] duration-300 group-data-[scene=window]/stage:translate-y-0 group-data-[scene=window]/stage:opacity-100 group-data-[scene=split]/stage:translate-y-0 group-data-[scene=split]/stage:opacity-100 motion-reduce:transition-none"><div class="flex items-center gap-2 px-3 py-2"><span class="inline-flex items-center gap-1.5" aria-hidden="true"><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span></span><span class="ml-auto inline-flex items-center gap-2"><span class="border-brand-border-subtle text-brand-text-3 rounded-full border px-1.5 py-px font-mono text-[9px]">9/10</span><span class="inline-flex h-5 w-5 items-center justify-center rounded-full transition-colors duration-300 motion-reduce:transition-none"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-columns2 h-3 w-3 text-brand-text-3" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M12 3v18"></path></svg></span><span class="bg-brand-surface-2 inline-flex h-5 w-5 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off text-brand-text-1 h-3 w-3 rotate-45" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg></span></div><div class="px-4"><p class="text-brand-text-1 text-[12px] leading-relaxed">we should to discuss again about the rollout cadence</p><p class="text-brand-text-3 mt-1 text-right font-mono text-[9px]">52 / 4000</p></div><div class="relative py-1"><span class="bg-brand-border-subtle block h-px w-full" aria-hidden="true"></span><span aria-hidden="true" class="bg-brand-border absolute left-1/2 top-1/2 h-1 w-8 -translate-x-1/2 -translate-y-1/2 roun
2823ded-full"></span></div><div class="px-4 pb-2 pt-2"><div class="flex items-center gap-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Original</span><span class="kr-score kr-score--good" aria-label="Sentence score 7 out of 10" data-testid="score-badge"><span aria-hidden="true">👍</span><span class="kr-score-text">Good 7 / 10</span></span></div><p class="bg-brand-surface text-brand-text-2 mt-1 rounded-lg px-2 py-1.5 text-[10px] leading-snug">we should to discuss again about the rollout cadence</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Corrected</span></div><p class="bg-brand-success-surface text-brand-success mt-1 rounded-lg px-2 py-1.5 text-[10px] font-medium leading-snug">we should discuss the rollout cadence again</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">What changed</span></div><div class="border-brand-border-subtle text-brand-text-1 mt-1 border-l-2 pl-2 text-[10px] leading-snug"><p class="kr-diff"><span class="kr-diff-eq">we should </span><del class="kr-diff-del">to </del><span class="kr-diff-eq">discuss </span><del class="kr-diff-del">again about </del><span class="kr-diff-eq">the rollout cadence</span><ins class="kr-diff-ins"> again</ins></p></div></div><div class="flex pb-3 pt-1 justify-center"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-1 rounded-full px-2 py-1 shadow-lg ring-1"><span class="text-brand-text-3 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3 w-3" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span class="bg-brand-surface-2 text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span class="text-brand-text-1 inline-flex items-center gap-1 text-[10px] font-semibold">Auto<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-repeat2 text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="m2 9 3-3 3 3"></path><path d="M13 18H7a2 2 0 0 1-2-2V6"></path><path d="m22 15-3 3-3-3"></path><path d="M11 6h6a2 2 0 0 1 2 2v10"></path></svg>English<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></span></span></div></div></div></div><span class="text-brand-text-3 absolute bottom-3 right-4 inline-flex items-center gap-1.5 text-[10px]"><span class="group-data-[scene=split]/stage:hidden group-data-[scene=window]/stage:hidden">Select, then press</span><span class="hidden group-data-[scene=split]/stage:inline group-data-[scene=window]/stage:inline">Or open the workbench with</span><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">⌥</span><span class="hidden group-data-[scene=split]/stage:inline group-data-[scene=window]/stage:inline"><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">⇧</span></span><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">D</span></span></div></div><div class=""><h3 class="text-brand-text-1 font-serif text-2xl font-medium leading-tight md:text-3xl">The answer opens where you are</h3><p class="text-brand-text-2 mt-4 text-base leading-relaxed md:text-lg md:leading-relaxed">No tab to switch to, nothing to paste. The result appears beside the sentence, and whatever you keep lands in the same Library as your browser captures — on the same review schedule.</p></div></div><div class="flex flex-col py-12 md:py-20 min-h-[60vh] justify-center md:min-h-[70vh]"><div class="mb-6 md:hidden"><div aria-hidden="true" data-scene="window" class="border-brand-border-subtle bg-brand-surface-2 ring-brand-border-subtle group/stage relative w-full overflow-hidden rounded-xl border shadow-sm ring-1"><div class="border-brand-border-subtle bg-brand-bg flex items-center gap-3 border-b px-3 py-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-apple text-brand-text-2 h-3 w-3" aria-hidden="true"><path d="M12 20.94c1.5 0 2.75 1.06 4 1.06 3 0 6-8 6-12.22A4.91 4.91 0 0 0 17 5c-2.22 0-4 1.44-5 2-1-.56-2.78-2-5-2a4.9 4.9 0 0 0-5 4.78C2 14 5 22 8 22c1.25 0 2.5-1.06 4-1.06Z"></path><path d="M10 2c1 .5 2 2 2 5"></path></svg><span class="text-brand-text-1 text-[10px] font-semibold">Team Chat</span><span class="text-brand-text-3 hidden gap-3 text-[10px] sm:flex"><span>File</span><span>Edit</span><span>View</span></span><span class="ml-auto inline-flex items-center gap-2.5"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-rh" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2824<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 
28241329.41 1271.8 1289.75L1169.1 1167.54L1055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-rh)"></path></g>
2825</svg><span class="text-brand-text-3 font-mono text-[10px]">9:41</span></span></div><div class="relative px-4 py-5 sm:px-7 sm:py-6 min-h-[420px]"><div class="border-brand-border-subtle bg-brand-bg rounded-lg border shadow-sm transition-opacity duration-300 group-data-[scene=split]/stage:opacity-40 group-data-[scene=window]/stage:opacity-40 motion-reduce:transition-none"><div class="border-brand-border-subtle flex items-center gap-1.5 border-b px-3 py-2"><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="text-brand-text-3 ml-2 truncate text-[10px]">#product-launch</span></div><div class="space-y-3 p-3.5"><div class="flex gap-2.5"><span aria-hidden="true" class="bg-brand-surface-2 border-brand-border-subtle mt-0.5 h-6 w-6 shrink-0 rounded-md border"></span><div class="min-w-0 flex-1"><p class="text-brand-text-1 text-[11px] font-semibold">Dana</p><div class="text-brand-text-2 mt-0.5 text-[11px] leading-relaxed">Pushed the copy changes — can someone check the release note?</div></div></div><div class="relative"><div class="flex gap-2.5"><span aria-hidden="true" class="bg-brand-surface-2 border-brand-border-subtle mt-0.5 h-6 w-6 shrink-0 rounded-md border"></span><div class="min-w-0 flex-1"><p class="text-brand-text-1 text-[11px] font-semibold">Priya</p><div class="text-brand-text-2 mt-0.5 text-[11px] leading-relaxed">Looks good, but <span class="bg-brand-warning-surface text-brand-text-1 rounded px-1 py-0.5">we should to discuss again about the rollout cadence</span> before Thursday.</div></div></div><div class="absolute left-9 top-full z-10 mt-2 flex flex-col items-start gap-1.5 transition-opacity duration-300 group-data-[scene=window]/stage:pointer-events-none group-data-[scene=window]/stage:opacity-0 group-data-[scene=split]/stage:pointer-events-none group-data-[scene=split]/stage:opacity-0 motion-reduce:transition-none"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-1 rounded-full py-1 pl-1.5 pr-2.5 shadow-lg ring-1"><span aria-hidden="true" class="text-brand-text-3 inline-flex items-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span aria-hidden="true" class="inline-flex items-center"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-ri" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2826<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 
28261329.41 1271.8 1289.75L1169.1 1167.54L1055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-ri)"></path></g>
2827</svg></span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3 w-3 shrink-0"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3 shrink-0"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-3 w-3 shrink-0"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg>Save</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-3 w-3 shrink-0"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume2 h-3 w-3 shrink-0"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><path d="M16 9a5 5 0 0 1 0 6"></path><path d="M19.364 18.364a9 9 0 0 0 0-12.728"></path></svg>Speak</span></span><span class="border-brand-border-subtle bg-brand-bg block w-[286px] overflow-hidden rounded-xl border shadow-xl origin-top scale-95 opacity-0 transition-[opacity,transform] duration-300 group-data-[scene=bubble]/stage:scale-100 group-data-[scene=bubble]/stage:opacity-100 motion-reduce:transition-none"><span class="border-brand-border-subtle relative flex items-center border-b px-2.5 py-1.5"><span class="text-brand-text-1 inline-flex items-center gap-1 text-[10px] font-semibold"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="text-brand-text-3 absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3 rotate-90"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span class="ml-auto inline-flex items-center gap-1.5"><span class="border-brand-border-subtle text-brand-text-3 rounded-full border px-1.5 py-px font-mono text-[8px]">9/10</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></span></span><span class="block p-2.5"><div class="flex items-center gap-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Original</span><span class="kr-score kr-score--good" aria-label="Sentence score 7 out of 10" data-testid="score-badge"><span aria-hidden="true">👍</span><span class="kr-score-text">Good 7 / 10</span></span></div><p class="bg-brand-surface text-brand-text-2 mt-1 rounded-lg px-2 py-1.5 text-[10px] leading-snug">
2827we should to discuss again about the rollout cadence</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Corrected</span></div><p class="bg-brand-success-surface text-brand-success mt-1 rounded-lg px-2 py-1.5 text-[10px] font-medium leading-snug">we should discuss the rollout cadence again</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">What changed</span></div><div class="border-brand-border-subtle text-brand-text-1 mt-1 border-l-2 pl-2 text-[10px] leading-snug"><p class="kr-diff"><span class="kr-diff-eq">we should </span><del class="kr-diff-del">to </del><span class="kr-diff-eq">discuss </span><del class="kr-diff-del">again about </del><span class="kr-diff-eq">the rollout cadence</span><ins class="kr-diff-ins"> again</ins></p></div></span></span></div></div></div></div><div class="absolute inset-x-8 top-[12%] z-20 sm:inset-x-16 pointer-events-none opacity-0 group-data-[scene=split]/stage:opacity-100 group-data-[scene=window]/stage:opacity-100"><div class="border-brand-border-subtle bg-brand-bg w-full overflow-hidden rounded-xl border shadow-2xl translate-y-3 opacity-0 transition-[opacity,transform] duration-300 group-data-[scene=window]/stage:translate-y-0 group-data-[scene=window]/stage:opacity-100 group-data-[scene=split]/stage:translate-y-0 group-data-[scene=split]/stage:opacity-100 motion-reduce:transition-none"><div class="flex items-center gap-2 px-3 py-2"><span class="inline-flex items-center gap-1.5" aria-hidden="true"><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span></span><span class="ml-auto inline-flex items-center gap-2"><span class="border-brand-border-subtle text-brand-text-3 rounded-full border px-1.5 py-px font-mono text-[9px]">9/10</span><span class="inline-flex h-5 w-5 items-center justify-center rounded-full transition-colors duration-300 motion-reduce:transition-none"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-columns2 h-3 w-3 text-brand-text-3" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M12 3v18"></path></svg></span><span class="bg-brand-surface-2 inline-flex h-5 w-5 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off text-brand-text-1 h-3 w-3 rotate-45" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg></span></div><div class="px-4"><p class="text-brand-text-1 text-[12px] leading-relaxed">we should to discuss again about the rollout cadence</p><p class="text-brand-text-3 mt-1 text-right font-mono text-[9px]">52 / 4000</p></div><div class="relative py-1"><span class="bg-brand-border-subtle block h-px w-full" aria-hidden="true"></span><span aria-hidden="true" class="bg-brand-border absolute left-1/2 top-1/2 h-1 w-8 -translate-x-1/2 -translate-y-1/2 roun
2827ded-full"></span></div><div class="px-4 pb-2 pt-2"><div class="flex items-center gap-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Original</span><span class="kr-score kr-score--good" aria-label="Sentence score 7 out of 10" data-testid="score-badge"><span aria-hidden="true">👍</span><span class="kr-score-text">Good 7 / 10</span></span></div><p class="bg-brand-surface text-brand-text-2 mt-1 rounded-lg px-2 py-1.5 text-[10px] leading-snug">we should to discuss again about the rollout cadence</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Corrected</span></div><p class="bg-brand-success-surface text-brand-success mt-1 rounded-lg px-2 py-1.5 text-[10px] font-medium leading-snug">we should discuss the rollout cadence again</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">What changed</span></div><div class="border-brand-border-subtle text-brand-text-1 mt-1 border-l-2 pl-2 text-[10px] leading-snug"><p class="kr-diff"><span class="kr-diff-eq">we should </span><del class="kr-diff-del">to </del><span class="kr-diff-eq">discuss </span><del class="kr-diff-del">again about </del><span class="kr-diff-eq">the rollout cadence</span><ins class="kr-diff-ins"> again</ins></p></div></div><div class="flex pb-3 pt-1 justify-center"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-1 rounded-full px-2 py-1 shadow-lg ring-1"><span class="text-brand-text-3 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3 w-3" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span class="bg-brand-surface-2 text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span class="text-brand-text-1 inline-flex items-center gap-1 text-[10px] font-semibold">Auto<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-repeat2 text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="m2 9 3-3 3 3"></path><path d="M13 18H7a2 2 0 0 1-2-2V6"></path><path d="m22 15-3 3-3-3"></path><path d="M11 6h6a2 2 0 0 1 2 2v10"></path></svg>English<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></span></span></div></div></div></div><span class="text-brand-text-3 absolute bottom-3 right-4 inline-flex items-center gap-1.5 text-[10px]"><span class="group-data-[scene=split]/stage:hidden group-data-[scene=window]/stage:hidden">Select, then press</span><span class="hidden group-data-[scene=split]/stage:inline group-data-[scene=window]/stage:inline">Or open the workbench with</span><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">⌥</span><span class="hidden group-data-[scene=split]/stage:inline group-data-[scene=window]/stage:inline"><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">⇧</span></span><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">D</span></span></div></div><div class=""><h3 class="text-brand-text-1 font-serif text-2xl font-medium leading-tight md:text-3xl">A workbench when one line isn't enough</h3><p class="text-brand-text-2 mt-4 text-base leading-relaxed md:text-lg md:leading-relaxed">⌥⇧D opens a resizable window that floats above whatever you are reading, so it never falls behind. On macOS 15 and later it also translates on-device — free, offline, no credits.</p></div></div><div class="flex flex-col py-12 md:py-20 min-h-[60vh] justify-center md:min-h-[150vh] md:justify-start"><div class="mb-6 md:hidden"><div aria-hidden="true" data-scene="split" class="border-brand-border-subtle bg-brand-surface-2 ring-brand-border-subtle group/stage relative w-full overflow-hidden rounded-xl border shadow-sm ring-1"><div class="border-brand-border-subtle bg-brand-bg flex items-center gap-3 border-b px-3 py-1.5"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-apple text-brand-text-2 h-3 w-3" aria-hidden="true"><path d="M12 20.94c1.5 0 2.75 1.06 4 1.06 3 0 6-8 6-12.22A4.91 4.91 0 0 0 17 5c-2.22 0-4 1.44-5 2-1-.56-2.78-2-5-2a4.9 4.9 0 0 0-5 4.78C2 14 5 22 8 22c1.25 0 2.5-1.06 4-1.06Z"></path><path d="M10 2c1 .5 2 2 2 5"></path></svg><span class="text-brand-text-1 text-[10px] font-semibold">Team Chat</span><span class="text-brand-text-3 hidden gap-3 text-[10px] sm:flex"><span>File</span><span>Edit</span><span>View</span></span><span class="ml-auto inline-flex items-center gap-2.5"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-rj" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2828<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 
28281329.41 1271.8 1289.75L1169.1 1167.54L1055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-rj)"></path></g>
2829</svg><span class="text-brand-text-3 font-mono text-[10px]">9:41</span></span></div><div class="relative px-4 py-5 sm:px-7 sm:py-6 min-h-[420px]"><div class="border-brand-border-subtle bg-brand-bg rounded-lg border shadow-sm transition-opacity duration-300 group-data-[scene=split]/stage:opacity-40 group-data-[scene=window]/stage:opacity-40 motion-reduce:transition-none"><div class="border-brand-border-subtle flex items-center gap-1.5 border-b px-3 py-2"><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full" aria-hidden="true"></span><span class="text-brand-text-3 ml-2 truncate text-[10px]">#product-launch</span></div><div class="space-y-3 p-3.5"><div class="flex gap-2.5"><span aria-hidden="true" class="bg-brand-surface-2 border-brand-border-subtle mt-0.5 h-6 w-6 shrink-0 rounded-md border"></span><div class="min-w-0 flex-1"><p class="text-brand-text-1 text-[11px] font-semibold">Dana</p><div class="text-brand-text-2 mt-0.5 text-[11px] leading-relaxed">Pushed the copy changes — can someone check the release note?</div></div></div><div class="relative"><div class="flex gap-2.5"><span aria-hidden="true" class="bg-brand-surface-2 border-brand-border-subtle mt-0.5 h-6 w-6 shrink-0 rounded-md border"></span><div class="min-w-0 flex-1"><p class="text-brand-text-1 text-[11px] font-semibold">Priya</p><div class="text-brand-text-2 mt-0.5 text-[11px] leading-relaxed">Looks good, but <span class="bg-brand-warning-surface text-brand-text-1 rounded px-1 py-0.5">we should to discuss again about the rollout cadence</span> before Thursday.</div></div></div><div class="absolute left-9 top-full z-10 mt-2 flex flex-col items-start gap-1.5 transition-opacity duration-300 group-data-[scene=window]/stage:pointer-events-none group-data-[scene=window]/stage:opacity-0 group-data-[scene=split]/stage:pointer-events-none group-data-[scene=split]/stage:opacity-0 motion-reduce:transition-none"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-1 rounded-full py-1 pl-1.5 pr-2.5 shadow-lg ring-1"><span aria-hidden="true" class="text-brand-text-3 inline-flex items-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span aria-hidden="true" class="inline-flex items-center"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" role="img" aria-label="KeepReap"><defs><linearGradient id="krm-rk" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#F5A23E"></stop><stop offset="1" stop-color="#E3620B"></stop></linearGradient></defs>
2830<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 
28301329.41 1271.8 1289.75L1169.1 1167.54L1055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="url(#krm-rk)"></path></g>
2831</svg></span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3 w-3 shrink-0"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3 shrink-0"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-save h-3 w-3 shrink-0"><path d="M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"></path><path d="M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"></path><path d="M7 3v4a1 1 0 0 0 1 1h7"></path></svg>Save</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy h-3 w-3 shrink-0"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>Copy</span><span aria-hidden="true" class="text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-volume2 h-3 w-3 shrink-0"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><path d="M16 9a5 5 0 0 1 0 6"></path><path d="M19.364 18.364a9 9 0 0 0 0-12.728"></path></svg>Speak</span></span><span class="border-brand-border-subtle bg-brand-bg block w-[286px] overflow-hidden rounded-xl border shadow-xl origin-top scale-95 opacity-0 transition-[opacity,transform] duration-300 group-data-[scene=bubble]/stage:scale-100 group-data-[scene=bubble]/stage:opacity-100 motion-reduce:transition-none"><span class="border-brand-border-subtle relative flex items-center border-b px-2.5 py-1.5"><span class="text-brand-text-1 inline-flex items-center gap-1 text-[10px] font-semibold"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="text-brand-text-3 absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-grip-vertical h-3 w-3 rotate-90"><circle cx="9" cy="12" r="1"></circle><circle cx="9" cy="5" r="1"></circle><circle cx="9" cy="19" r="1"></circle><circle cx="15" cy="12" r="1"></circle><circle cx="15" cy="5" r="1"></circle><circle cx="15" cy="19" r="1"></circle></svg></span><span class="ml-auto inline-flex items-center gap-1.5"><span class="border-brand-border-subtle text-brand-text-3 rounded-full border px-1.5 py-px font-mono text-[8px]">9/10</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></span></span><span class="block p-2.5"><div class="flex items-center gap-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Original</span><span class="kr-score kr-score--good" aria-label="Sentence score 7 out of 10" data-testid="score-badge"><span aria-hidden="true">👍</span><span class="kr-score-text">Good 7 / 10</span></span></div><p class="bg-brand-surface text-brand-text-2 mt-1 rounded-lg px-2 py-1.5 text-[10px] leading-snug">
2831we should to discuss again about the rollout cadence</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Corrected</span></div><p class="bg-brand-success-surface text-brand-success mt-1 rounded-lg px-2 py-1.5 text-[10px] font-medium leading-snug">we should discuss the rollout cadence again</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">What changed</span></div><div class="border-brand-border-subtle text-brand-text-1 mt-1 border-l-2 pl-2 text-[10px] leading-snug"><p class="kr-diff"><span class="kr-diff-eq">we should </span><del class="kr-diff-del">to </del><span class="kr-diff-eq">discuss </span><del class="kr-diff-del">again about </del><span class="kr-diff-eq">the rollout cadence</span><ins class="kr-diff-ins"> again</ins></p></div></span></span></div></div></div></div><div class="absolute inset-x-8 top-[12%] z-20 sm:inset-x-16 pointer-events-none opacity-0 group-data-[scene=split]/stage:opacity-100 group-data-[scene=window]/stage:opacity-100"><div class="border-brand-border-subtle bg-brand-bg w-full overflow-hidden rounded-xl border shadow-2xl translate-y-3 opacity-0 transition-[opacity,transform] duration-300 group-data-[scene=window]/stage:translate-y-0 group-data-[scene=window]/stage:opacity-100 group-data-[scene=split]/stage:translate-y-0 group-data-[scene=split]/stage:opacity-100 motion-reduce:transition-none"><div class="flex items-center gap-2 px-3 py-2"><span class="inline-flex items-center gap-1.5" aria-hidden="true"><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span><span class="bg-brand-border-subtle h-2 w-2 rounded-full"></span></span><span class="ml-auto inline-flex items-center gap-2"><span class="border-brand-border-subtle text-brand-text-3 rounded-full border px-1.5 py-px font-mono text-[9px]">9/10</span><span class="inline-flex h-5 w-5 items-center justify-center rounded-full transition-colors duration-300 bg-brand-surface-2 motion-reduce:transition-none"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-columns2 h-3 w-3 text-brand-text-1" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M12 3v18"></path></svg></span><span class="bg-brand-surface-2 inline-flex h-5 w-5 items-center justify-center rounded-full"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pin-off text-brand-text-1 h-3 w-3 rotate-45" aria-hidden="true"><path d="M12 17v5"></path><path d="M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89"></path><path d="m2 2 20 20"></path><path d="M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11"></path></svg></span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg></span></div><div class="flex min-h-[190px] items-stretch"><div class="min-w-0 flex-1 px-4 pb-2"><p class="text-brand-text-1 text-[12px] leading-relaxed">
2831we should to discuss again about the rollout cadence</p><p class="text-brand-text-3 mt-1 text-right font-mono text-[9px]">52 / 4000</p></div><div class="relative w-px shrink-0 py-2"><span class="bg-brand-border-subtle block h-full w-px" aria-hidden="true"></span><span aria-hidden="true" class="bg-brand-border absolute left-1/2 top-1/2 h-8 w-1 -translate-x-1/2 -translate-y-1/2 rounded-full"></span></div><div class="min-w-0 flex-1 px-4 pb-2"><div class="flex items-center gap-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Original</span><span class="kr-score kr-score--good" aria-label="Sentence score 7 out of 10" data-testid="score-badge"><span aria-hidden="true">👍</span><span class="kr-score-text">Good 7 / 10</span></span></div><p class="bg-brand-surface text-brand-text-2 mt-1 rounded-lg px-2 py-1.5 text-[10px] leading-snug">we should to discuss again about the rollout cadence</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">Corrected</span></div><p class="bg-brand-success-surface text-brand-success mt-1 rounded-lg px-2 py-1.5 text-[10px] font-medium leading-snug">we should discuss the rollout cadence again</p><div class="mt-2"><span class="text-brand-text-3 text-[9px] font-semibold uppercase tracking-[0.12em]">What changed</span></div><div class="border-brand-border-subtle text-brand-text-1 mt-1 border-l-2 pl-2 text-[10px] leading-snug"><p class="kr-diff"><span class="kr-diff-eq">we should </span><del class="kr-diff-del">to </del><span class="kr-diff-eq">discuss </span><del class="kr-diff-del">again about </del><span class="kr-diff-eq">the rollout cadence</span><ins class="kr-diff-ins"> again</ins></p></div></div></div><div class="flex pb-3 pt-1 w-1/2 justify-center"><span class="border-brand-border-subtle bg-brand-bg ring-brand-border-subtle inline-flex items-center gap-1 rounded-full px-2 py-1 shadow-lg ring-1"><span class="text-brand-text-3 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-languages h-3 w-3" aria-hidden="true"><path d="m5 8 6 6"></path><path d="m4 14 6-6 2-3"></path><path d="M2 5h12"></path><path d="M7 2h1"></path><path d="m22 22-5-10-5 10"></path><path d="M14 18h6"></path></svg>Translate</span><span class="bg-brand-surface-2 text-brand-text-1 inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles h-3 w-3" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg>Improve</span><span aria-hidden="true" class="bg-brand-border mx-1 h-4 w-px"></span><span class="text-brand-text-1 inline-flex items-center gap-1 text-[10px] font-semibold">Auto<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-repeat2 text-brand-text-3 h-3 w-3" aria-hidden="true"><path d="m2 9 3-3 3 3"></path><path d="M13 18H7a2 2 0 0 1-2-2V6"></path><path d="m22 15-3 3-3-3"></path><path d="M11 6h6a2 2 0 0 1 2 2v10"></path></svg>English<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down text-brand-text-3 h-2.5 w-2.5" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></span></span></div></div></div></div><span class="text-brand-text-3 absolute bottom-3 right-4 inline-flex items-center gap-1.5 text-[10px]"><span class="group-data-[scene=split]/stage:hidden group-data-[scene=window]/stage:hidden">Select, then press</span><span class="hidden group-data-[scene=split]/stage:inline group-data-[scene=window]/stage:inline">Or open the workbench with</span><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">⌥</span><span class="hidden group-data-[scene=split]/stage:inline group-data-[scene=window]/stage:inline"><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">⇧</span></span><span class="border-brand-border bg-brand-bg text-brand-text-2 inline-flex h-5 min-w-[20px] items-center justify-center rounded border px-1 font-mono text-[10px] leading-none shadow-sm">D</span></span></div></div><div class="md:sticky md:top-44"><h3 class="text-brand-text-1 font-serif text-2xl font-medium leading-tight md:text-3xl">Two columns when you want to compare</h3><p class="text-brand-text-2 mt-4 text-base leading-relaxed md:text-lg md:leading-relaxed">One click splits the window: your text on one side, the result on the other, with a divider you can drag. Each layout remembers its own size.</p></div></div></div></div><div class="mt-6 flex flex-wrap items-center justify-center gap-x-4 gap-y-3 md:mt-12"><a href="https://github.com/ocxers/keepreap-releases/releases/latest/download/KeepReap-macOS.dmg" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none bg-brand-primary text-brand-on-primary hover:bg-brand-primary-hover focus-visible:ring-brand-link h-[42px] px-6 text-base"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-apple h-4 w-4" aria-hidden="true"><path d="M12 20.94c1.5 0 2.75 1.06 4 1.06 3 0 6-8 6-12.22A4.91 4.91 0 0 0 17 5c-2.22 0-4 1.44-5 2-1-.56-2.78-2-5-2a4.9 4.9 0 0 0-5 4.78C2 14 5 22 8 22c1.25 0 2.5-1.06 4-1.06Z"></path><path d="M10 2c1 .5 2 2 2 5"></path></svg>Download for Mac</a><span class="text-brand-text-3 text-xs">macOS 12 or later<span aria-hidden="true"> · </span>Menu bar only, signed and notarized</span></div></div></section><section id="work-scenarios" data-testid="landing-work-scenarios" class="bg-brand-bg px-6 py-20 md:py-28"><div data-revealed="false" class="section-reveal mx-auto max-w-6xl"><div class="mx-auto max-w-3xl text-center"><p class="section-reveal-item text-brand-text-3 font-mono text-[11px] font-semibold uppercase tracking-[0.18em]">Workplace English</p><h2 class="section-reveal-item text-brand-text-1 mt-4 font-serif text-3xl font-medium tracking-tight md:text-5xl">Built for the English you already use at work</h2><p class="section-reveal-item text-brand-text-2 mt-5 text-base leading-relaxed md:text-lg md:leading-relaxed" style="--reveal-d: 120ms;">Requirements, Slack replies, comments, daily reports, weekly reports, and email all create small English decisions. KeepReap helps in the moment and keeps the useful language for review later.</p></div><div class="mt-10 grid gap-4 sm:grid-cols-2 lg:grid-cols-3"><article class="section-reveal-item border-brand-border-subtle bg-brand-surface rounded-lg border p-5" style="--reveal-d: 180ms;"><div class="flex items-start gap-3"><span class="border-brand-border-subtle bg-brand-bg text-brand-text-1 inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text h-4 w-4" aria-hidden="true"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"></path><path d="M14 2v4a2 2 0 0 0 2 2h4"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg></span><div><h3 class="text-brand-text-1 text-base font-semibold">Requirements</h3><p class="text-brand-text-2 mt-2 text-sm leading-relaxed">An acceptance criterion or edge-case sentence is risky to misread.</p></div></div><div class="border-brand-border-subtle mt-5 space-y-3 border-t pt-4"><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Use KeepReap</span><br>Select the line on the page and Translate the part you are unsure about.</p><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Save for later</span><br>Product vocabulary, requirement phrasing, and edge-case wording.</p></div></article><article class="section-reveal-item border-brand-border-subtle bg-brand-surface rounded-lg border p-5" style="--reveal-d: 260ms;"><div class="flex items-start gap-3"><span class="border-brand-border-subtle bg-brand-bg text-brand-text-1 inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square h-4 w-4" aria-hidden="true"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg></span><div><h3 class="text-brand-text-1 text-base font-semibold">Slack in browser</h3><p class="text-brand-text-2 mt-2 text-sm leading-relaxed">A reply needs to be fast, clear, and not too blunt.</p></div></div><div class="border-brand-border-subtle mt-5 space-y-3 border-t pt-4"><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Use KeepReap</span><br>Translate a teammate's message or Improve your draft before sending.</p><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Save for later</span><br>Polite async communication patterns you can review later.</p></div></article><article class="section-reveal-item border-brand-border-subtle bg-brand-surface rounded-lg border p-5" style="--reveal-d: 340ms;"><div class="flex items-start gap-3"><span class="border-brand-border-subtle bg-brand-bg text-brand-text-1 inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-messages-square h-4 w-4" aria-hidden="true"><path d="M14 9a2 2 0 0 1-2 2H6l-4 4V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2z"></path><path d="M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1"></path></svg></span><div><h3 class="text-brand-text-1 text-base font-semibold">Comments</h3><p class="text-brand-text-2 mt-2 text-sm leading-relaxed">A ticket or PR comment needs a careful tone.</p></div></div><div class="border-brand-border-subtle mt-5 space-y-3 border-t pt-4"><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Use KeepReap</span><br>Improve clarification questions, risk notes, and polite pushback.</p><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Save for later</span><br>Reusable language for questions, follow-ups, and review comments.</p></div></article><article class="section-reveal-item border-brand-border-subtle bg-brand-surface rounded-lg border p-5" style="--reveal-d: 420ms;"><div class="flex items-start gap-3"><span class="border-brand-border-subtle bg-brand-bg text-brand-text-1 inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-notebook-text h-4 w-4" aria-hidden="true"><path d="M2 6h4"></path><path d="M2 10h4"></path><path d="M2 14h4"></path><path d="M2 18h4"></path><rect width="16" height="20" x="4" y="2" rx="2"></rect><path d="M9.5 8h5"></path><path d="M9.5 12H16"></path><path d="M9.5 16H14"></path></svg></span><div><h3 class="text-brand-text-1 text-base font-semibold">Daily and weekly reports</h3><p class="text-brand-text-2 mt-2 text-sm leading-relaxed">A status update needs structure around progress, blockers, risks, and next steps.</p></div></div><div class="border-brand-border-subtle mt-5 space-y-3 border-t pt-4"><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Use KeepReap</span><br>Paste the draft into the Side Panel or WebApp and Improve the paragraph.</p><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Save for later</span><br>Status, blocker, risk, and next-step phrasing you repeat every week.</p></div></article><article class="section-reveal-item border-brand-border-subtle bg-brand-surface rounded-lg border p-5" style="--reveal-d: 500ms;"><div class="flex items-start gap-3"><span class="border-brand-border-subtle bg-brand-bg text-brand-text-1 inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mail h-4 w-4" aria-hidden="true"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg></span><div><h3 class="text-brand-text-1 text-base font-semibold">Email</h3><p class="text-brand-text-2 mt-2 text-sm leading-relaxed">A status email, release note, handoff, or clarification request needs a cleaner structure.</p></div></div><div class="border-brand-border-subtle mt-5 space-y-3 border-t pt-4"><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Use KeepReap</span><br>Improve the draft before sending and Save the useful phrases.</p><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Save for later</span><br>Reusable email openings, handoff language, and follow-up wording.</p></div></article><article class="section-reveal-item border-brand-border-subtle bg-brand-surface rounded-lg border p-5" style="--reveal-d: 580ms;"><div class="flex items-start gap-3"><span class="border-brand-border-subtle bg-brand-bg text-brand-text-1 inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bug h-4 w-4" aria-hidden="true"><path d="m8 2 1.88 1.88"></path><path d="M14.12 3.88 16 2"></path><path d="M9 7.13v-1a3.003 3.003 0 1 1 6 0v1"></path><path d="M12 20c-3.3 0-6-2.7-6-6v-3a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v3c0 3.3-2.7 6-6 6"></path><path d="M12 20v-9"></path><path d="M6.53 9C4.6 8.8 3 7.1 3 5"></path><path d="M6 13H2"></path><path d="M3 21c0-2.1 1.7-3.9 3.8-4"></path><path d="M20.97 5c0 2.1-1.6 3.8-3.5 4"></path><path d="M22 13h-4"></path><path d="M17.2 17c2.1.1 3.8 1.9 3.8 4"></path></svg></span><div><h3 class="text-brand-text-1 text-base font-semibold">Bug reports</h3><p class="text-brand-text-2
2831 mt-2 text-sm leading-relaxed">Steps, expected results, actual results, and severity notes need precision.</p></div></div><div class="border-brand-border-subtle mt-5 space-y-3 border-t pt-4"><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Use KeepReap</span><br>Improve rough wording before posting it to Jira or a bug report.</p><p class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Save for later</span><br>Bug-report expressions engineers can act on.</p></div></article></div><div class="section-reveal-item border-brand-border-subtle bg-brand-bg mt-8 rounded-lg border p-5 md:p-6" style="--reveal-d: 720ms;"><div class="grid gap-5 md:grid-cols-[1fr_1.25fr] md:items-center"><div><p class="text-brand-text-3 font-mono text-[11px] font-semibold uppercase tracking-[0.18em]">Before / after</p><h3 class="text-brand-text-1 mt-3 font-serif text-2xl font-medium leading-tight md:text-3xl">Make rough English clear enough to act on</h3><p class="text-brand-text-2 mt-3 text-sm leading-relaxed md:text-base md:leading-relaxed">KeepReap is useful in the moment, but the saved pattern is the long-term value.</p></div><div class="grid gap-3"><div class="border-brand-border-subtle bg-brand-surface rounded-lg border p-4"><p class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Rough</p><p class="text-brand-text-2 mt-2 text-sm leading-relaxed">The button has problem after click many times.</p></div><div class="border-brand-primary/40 bg-brand-surface rounded-lg border p-4"><p class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Improved</p><p class="text-brand-text-1 mt-2 text-sm font-medium leading-relaxed">The button becomes unresponsive after repeated clicks.</p></div><div class="text-brand-text-2 text-sm leading-relaxed"><span class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Saved as</span> Bug-report expression</div></div></div></div></div></section><section id="how-to-say-it" data-testid="landing-how-to-say-it" class="bg-brand-surface px-6 py-20 md:py-28"><div data-revealed="false" class="section-reveal mx-auto max-w-6xl"><div class="mx-auto max-w-3xl text-center"><p class="section-reveal-item text-brand-text-3 font-mono text-[11px] font-semibold uppercase tracking-[0.18em]">Free to read, no account</p><h2 class="section-reveal-item text-brand-text-1 mt-4 font-serif text-3xl font-medium tracking-tight md:text-5xl">How to Say It at Work</h2><p class="section-reveal-item text-brand-text-2 mt-5 text-base leading-relaxed md:text-lg md:leading-relaxed" style="--reveal-d: 120ms;">Short pages on the sentences people stall on — the chase, the sign-off, the polite no. Each one gives you the alternatives that actually work, with the register marked.</p></div><ul class="mt-10 grid gap-4 sm:grid-cols-2 lg:grid-cols-3" aria-hidden="true"><li data-testid="landing-how-to-say-it-placeholder" class="border-brand-border-subtle bg-brand-bg rounded-lg border h-[176px]"></li><li data-testid="landing-how-to-say-it-placeholder" class="border-brand-border-subtle bg-brand-bg rounded-lg border h-[176px]"></li><li data-testid="landing-how-to-say-it-placeholder" class="border-brand-border-subtle bg-brand-bg rounded-lg border h-[176px]"></li></ul><div class="section-reveal-item mt-8 flex justify-center" style="--reveal-d: 180ms;"><a href="/s" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none bg-transparent text-brand-text-1 border border-brand-border hover:bg-brand-surface focus-visible:ring-brand-text-1 h-[42px] px-6 text-base">Browse All Series<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right h-4 w-4" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></div></div></section><section data-testid="landing-differentiators" class="bg-brand-bg px-6 py-20 md:py-28"><div data-revealed="false" class="section-reveal mx-auto max-w-3xl"><h2 class="section-reveal-item text-brand-text-1 text-center font-serif text-3xl font-medium tracking-tight md:text-5xl">Not another translator</h2><div class="divide-brand-border-subtle mt-12 space-y-10 divide-y md:mt-16 md:space-y-14"><div class="section-reveal-item pt-10 first:pt-0 md:pt-14" style="--reveal-d: 160ms;"><h3 class="text-brand-text-1 font-serif text-2xl font-medium leading-tight tracking-tight md:text-4xl"><span class="text-brand-text-3">×</span> Not a translator tab</h3><p class="text-brand-text-2 mt-4 text-base leading-relaxed md:mt-5 md:text-lg md:leading-relaxed"><strong class="text-brand-text-1 font-semibold">Translate</strong> and <strong class="text-brand-text-1 font-semibold">Improve</strong> are there when you need them, but they aren't the destination. The point is what you keep — sentences saved to your <strong class="text-brand-text-1 font-semibold">library</strong> with source URLs attached, surfaced again when review actually helps.</p></div><div class="section-reveal-item pt-10 first:pt-0 md:pt-14" style="--reveal-d: 280ms;"><h3 class="text-brand-text-1 font-serif text-2xl font-medium leading-tight tracking-tight md:text-4xl"><span class="text-brand-text-3">×</span> Not a vocabulary graveyard</h3><p class="text-brand-text-2 mt-4 text-base leading-relaxed md:mt-5 md:text-lg md:leading-relaxed">Saved items return as practice — typing prompts, cloze cards, weekly tests. <strong class="text-brand-text-1 font-semibold">Spaced timing</strong> brings them back when forgetting curves say it's useful, not when guilt does.</p></div><div class="section-reveal-item pt-10 first:pt-0 md:pt-14" style="--reveal-d: 400ms;"><h3 class="text-brand-text-1 font-serif text-2xl font-medium leading-tight tracking-tight md:text-4xl"><span class="text-brand-text-3">×</span> Not flashcards you just flip</h3><p class="text-brand-text-2 mt-4 text-base leading-relaxed md:mt-5 md:text-lg md:leading-relaxed">Recognising a word isn't the same as using it. Practice moves each item from <strong class="text-brand-text-1 font-semibold">picking it out</strong> to <strong class="text-brand-text-1 font-semibold">filling the gap</strong> to <strong class="text-brand-text-1 font-semibold">writing it yourself</strong> — so what you saved becomes English you can actually produce.</p></div></div></div></section><section id="pricing" data-testid="landing-pricing" class="bg-brand-surface px-6 py-20 md:py-28"><div data-revealed="false" class="section-reveal mx-auto max-w-5xl"><p class="section-reveal-item text-brand-text-3 text-center font-mono text-[10px] font-semibold uppercase tracking-wider">Pricing</p><h2 class="section-reveal-item text-brand-text-1 mt-3 text-center font-serif text-3xl font-medium tracking-tight md:text-5xl" style="--reveal-d: 80ms;">Transparent pricing. Start free.</h2><p class="section-reveal-item text-brand-text-2 mx-auto mt-4 max-w-2xl text-center text-base leading-relaxed md:text-[17px] md:leading-relaxed" style="--reveal-d: 160ms;">Every plan includes Translate, Improve, Save and Review. You only pay if your daily work asks for more credits.</p><div class="section-reveal-item mt-8 flex justify-center" style="--reveal-d: 200ms;"><div role="tablist" aria-label="Pricing" class="border-brand-border-subtle bg-brand-surface inline-flex items-center gap-1 rounded-full border p-1 text-xs"><button type="button" role="tab" aria-selected="false" class="rounded-full px-4 py-1.5 font-medium transition-colors text-brand-text-2 hover:text-brand-text-1">Monthly</button><button type="button" role="tab" aria-selected="true" class="inline-flex items-center gap-2 rounded-full px-4 py-1.5 font-medium transition-colors bg-brand-primary text-brand-on-primary">Yearly<span class="rounded-full px-1.5 py-0.5 text-[10px] bg-brand-on-primary/15 text-brand-on-primary">Save ~17%</span></button></div></div><div class="mt-10 grid grid-cols-1 gap-5 md:mt-12 md:grid-cols-3 md:gap-6"><button type="button" aria-label="Start with the Free plan" class="section-reveal-item focus-visible:ring-brand-primary relative flex flex-col rounded-xl border p-6 text-left transition-[border-color,box-shadow,transform] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 md:p-7 hover:-translate-y-0.5 border-brand-border-subtle hover:border-brand-primary bg-brand-surface hover:shadow-md" style="--reveal-d: 260ms;"><p class="text-brand-text-2 text-xs uppercase tracking-wide">Free</p><div class="mt-3 flex items-baseline gap-1"><span class="text-brand-text-1 font-serif text-4xl font-medium md:text-5xl">$0</span><span class="text-brand-text-3 text-sm">forever</span></div><p class="text-brand-text-1 mt-4 font-mono text-sm"><span class="bg-brand-surface-2 inline-block animate-pulse rounded h-4 w-28"></span></p><ul class="mt-3 space-y-1.5"><li class="text-brand-text-1 flex items-center gap-1.5 text-xs font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-infinity text-brand-primary size-3.5 shrink-0" aria-hidden="true"><path d="M12 12c-2-2.67-4-4-6-4a4 4 0 1 0 0 8c2 0 4-1.33 6-4Zm0 0c2 2.67 4 4 6 4a4 4 0 0 0 0-8c-2 0-4 1.33-6 4Z"></path></svg>Built-in translation · Unlimited</li><li class="text-brand-text-2 flex items-center gap-1.5 text-xs"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check text-brand-primary size-3.5 shrink-0" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg><span class="bg-brand-surface-2 inline-block animate-pulse rounded h-3 w-24"></span></li><li class="text-brand-text-2 flex items-center gap-1.5 text-xs"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check text-brand-primary size-3.5 shrink-0" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg><span class="bg-brand-surface-2 inline-block animate-pulse rounded h-3 w-24"></span></li></ul><p class="text-brand-text-2 mt-3 text-sm leading-relaxed">Enough for casual reading and a few writes per day. No card required.</p>
2831<p class="text-brand-text-3 mt-4 min-h-4 text-xs" aria-live="polite"></p></button><button type="button" aria-label="Start with the Plus plan" class="section-reveal-item focus-visible:ring-brand-primary relative flex flex-col rounded-xl border p-6 text-left transition-[border-color,box-shadow,transform] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 md:p-7 hover:-translate-y-0.5 border-brand-border-subtle hover:border-brand-primary bg-brand-surface hover:shadow-md" style="--reveal-d: 360ms;"><p class="text-brand-text-2 text-xs uppercase tracking-wide">Plus</p><div class="mt-3 flex items-baseline gap-1"><span class="text-brand-text-1 font-serif text-4xl font-medium md:text-5xl">$2.50</span><span class="text-brand-text-3 text-sm">/ mo, billed yearly</span></div><p class="text-brand-text-1 mt-4 font-mono text-sm"><span class="bg-brand-surface-2 inline-block animate-pulse rounded h-4 w-28"></span></p><ul class="mt-3 space-y-1.5"><li class="text-brand-text-1 flex items-center gap-1.5 text-xs font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-infinity text-brand-primary size-3.5 shrink-0" aria-hidden="true"><path d="M12 12c-2-2.67-4-4-6-4a4 4 0 1 0 0 8c2 0 4-1.33 6-4Zm0 0c2 2.67 4 4 6 4a4 4 0 0 0 0-8c-2 0-4 1.33-6 4Z"></path></svg>Built-in translation · Unlimited</li><li class="text-brand-text-2 flex items-center gap-1.5 text-xs"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check text-brand-primary size-3.5 shrink-0" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg><span class="bg-brand-surface-2 inline-block animate-pulse rounded h-3 w-24"></span></li><li class="text-brand-text-2 flex items-center gap-1.5 text-xs"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check text-brand-primary size-3.5 shrink-0" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg><span class="bg-brand-surface-2 inline-block animate-pulse rounded h-3 w-24"></span></li></ul><p class="text-brand-text-2 mt-3 text-sm leading-relaxed">Step up for regular writing, reading and daily practice.</p><p class="text-brand-text-3 mt-4 min-h-4 text-xs" aria-live="polite"></p></button><button type="button" aria-label="Start with the Pro plan" class="section-reveal-item focus-visible:ring-brand-primary relative flex flex-col rounded-xl border p-6 text-left transition-[border-color,box-shadow,transform] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 md:p-7 hover:-translate-y-0.5 border-brand-primary bg-brand-surface shadow-md hover:shadow-lg" style="--reveal-d: 460ms;"><span class="bg-brand-primary text-brand-on-primary absolute -top-3 left-1/2 -translate-x-1/2 rounded-full px-3 py-1 text-[10px] font-semibold uppercase tracking-wide">Best value</span><p class="text-brand-text-2 text-xs uppercase tracking-wide">Pro</p><div class="mt-3 flex items-baseline gap-1"><span class="text-brand-text-1 font-serif text-4xl font-medium md:text-5xl">$5.00</span><span class="text-brand-text-3 text-sm">/ mo, billed yearly</span></div><p class="text-brand-text-1 mt-4 font-mono text-sm"><span class="bg-brand-surface-2 inline-block animate-pulse rounded h-4 w-28"></span></p><ul class="mt-3 space-y-1.5"><li class="text-brand-text-1 flex items-center gap-1.5 text-xs font-medium"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-infinity text-brand-primary size-3.5 shrink-0" aria-hidden="true"><path d="M12 12c-2-2.67-4-4-6-4a4 4 0 1 0 0 8c2 0 4-1.33 6-4Zm0 0c2 2.67 4 4 6 4a4 4 0 0 0 0-8c-2 0-4 1.33-6 4Z"></path></svg>Built-in translation · Unlimited</li><li class="text-brand-text-2 flex items-center gap-1.5 text-xs"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check text-brand-primary size-3.5 shrink-0" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg><span class="bg-brand-surface-2 inline-block animate-pulse rounded h-3 w-24"></span></li><li class="text-brand-text-2 flex items-center gap-1.5 text-xs"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check text-brand-primary size-3.5 shrink-0" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg><span class="bg-brand-surface-2 inline-block animate-pulse rounded h-3 w-24"></span></li></ul><p class="text-brand-text-2 mt-3 text-sm leading-relaxed">For people who write and study in English every day.</p>
2831<p class="text-brand-text-3 mt-4 min-h-4 text-xs" aria-live="polite"></p></button></div><p role="alert" class="min-h-5 text-sm text-brand-danger mt-6 text-center"></p><div class="section-reveal-item mt-12 flex flex-col items-center" style="--reveal-d: 560ms;"><p class="text-brand-text-2 text-center text-sm">Need more? Top-up credits never expire.</p><div class="mt-4 flex min-h-[34px] flex-wrap items-center justify-center gap-2"></div></div><p class="section-reveal-item text-brand-text-3 mt-4 min-h-4 text-center text-xs" style="--reveal-d: 600ms;"></p><div class="section-reveal-item mt-10 flex flex-col items-center gap-3 sm:flex-row sm:justify-center" style="--reveal-d: 640ms;"><button type="button" class="bg-brand-primary text-brand-on-primary hover:bg-brand-primary-hover inline-flex items-center justify-center rounded-full px-6 py-3 text-sm font-semibold transition-colors">Start Free</button></div><div id="refer-and-earn" data-testid="landing-refer-panel" class="section-reveal-item border-brand-border-subtle bg-brand-surface mt-16 grid gap-8 rounded-xl border p-6 md:grid-cols-2 md:p-8" style="--reveal-d: 720ms;"><div><p class="text-brand-text-3 font-mono text-[10px] font-semibold uppercase tracking-wider">Refer &amp; Earn</p><h3 class="text-brand-text-1 mt-3 font-serif text-2xl font-medium tracking-tight md:text-3xl">Refer friends. Earn unlimited credits.</h3><p class="text-brand-text-2 mt-3 text-sm leading-relaxed md:text-[15px] md:leading-relaxed">200 credits for every friend who tries KeepReap — no limit on how many you invite, and they never expire.</p><a class="bg-brand-primary text-brand-on-primary hover:bg-brand-primary-hover mt-5 inline-flex rounded-full px-5 py-2.5 text-sm font-semibold transition-colors" href="/sign-in?reason=referral&amp;after=%2Fadmin%2Fsettings%2Freferrals">Get Your Invite Link</a></div><ol class="grid gap-4 self-center"><li class="flex gap-3"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-gift text-brand-primary mt-0.5 size-5 shrink-0" aria-hidden="true"><rect x="3" y="8" width="18" height="4" rx="1"></rect><path d="M12 8v13"></path><path d="M19 12v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-7"></path><path d="M7.5 8a2.5 2.5 0 0 1 0-5A4.8 8 0 0 1 12 8a4.8 8 0 0 1 4.5-5 2.5 2.5 0 0 1 0 5"></path></svg><div><div class="text-brand-text-1 text-sm font-semibold">Sign in and copy your link</div><p class="text-brand-text-2 mt-1 text-[13px] leading-relaxed">Sign in and copy your personal invite link from Settings → Referrals.</p></div></li><li class="flex gap-3"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-send text-brand-primary mt-0.5 size-5 shrink-0" aria-hidden="true"><path d="M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z"></path><path d="m21.854 2.147-10.94 10.939"></path></svg><div><div class="text-brand-text-1 text-sm font-semibold">Share with anyone</div><p class="text-brand-text-2 mt-1 text-[13px] leading-relaxed">Share via Slack, email, X, LinkedIn — or anywhere you'd naturally recommend a tool.</p></div></li><li class="flex gap-3"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sparkles text-brand-primary mt-0.5 size-5 shrink-0" aria-hidden="true"><path d="M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z"></path><path d="M20 3v4"></path><path d="M22 5h-4"></path><path d="M4 17v2"></path><path d="M5 18H3"></path></svg><div><div class="text-brand-text-1 text-sm font-semibold">Earn 200 credits</div><p class="text-brand-text-2 mt-1 text-[13px] leading-relaxed">When your friend uses ≥ 20 of their free credits within 2 months (every account starts with 200 free credits a month), you earn 200 credits that never expire.</p></div></li></ol></div></div></section><section id="faq" data-testid="landing-faq" class="bg-brand-bg px-6 py-20 md:py-28">
2831<script type="application/ld+json">{"@context":"https://schema.org","@type":"FAQPage","mainEntity":[{"@type":"Question","name":"Can I try it without signing up?","acceptedAnswer":{"@type":"Answer","text":"Yes. Both the Chrome extension and the Mac app have an anonymous mode with 10 lifetime AI actions (Save, Improve, Translate) to try the loop. Sign in to keep your captures across sessions and lift the limit."}},{"@type":"Question","name":"Do I need the Chrome extension?","acceptedAnswer":{"@type":"Answer","text":"No. The web app works on its own — read books from the shelf, add Word Libraries, practise and track your progress. The Chrome extension and the Mac app add capture from everything else you read."}},{"@type":"Question","name":"What does the Mac app need?","acceptedAnswer":{"@type":"Answer","text":"macOS 12 or later, plus the Accessibility permission so it can read the text you select — it never reads your clipboard. The app is signed and notarized by Apple. On macOS 15 and later it can also translate on-device: free, offline and no credits."}}
2831,{"@type":"Question","name":"Is my data private?","acceptedAnswer":{"@type":"Answer","text":"Your data stays in KeepReap's database and we never sell it. Google is used only when you choose Google sign-in; email/password sign-in stays first-party. Our website uses Google Analytics and loads Google AdSense, but neither sets cookies unless you accept them. SOC2 work is out of scope while we are in Early Access."}},{"@type":"Question","name":"Is it free?","acceptedAnswer":{"@type":"Answer","text":"Yes. The Free plan includes 200 AI credits a month, unlimited built-in translation for supported languages and up to 20 books on your shelf. Plus and Pro add more credits and remove the book limit — see Pricing above."}},{"@type":"Question","name":"Does it work in browsers other than Chrome?","acceptedAnswer":{"@type":"Answer","text":"The extension is Chrome-only for now — Firefox and Safari come after Early Access. On a Mac you don't have to wait: the Mac app reads your selection at the system level, so it works in Safari, Firefox and every other app."}}]}</script>
2831<div class="mx-auto max-w-3xl"><h2 class="text-brand-text-1 text-center font-serif text-3xl font-medium tracking-tight md:text-5xl">Common questions</h2><div class="divide-brand-border-subtle mt-10 divide-y md:mt-14"><div><button type="button" aria-expanded="true" aria-controls=":rl:" class="text-brand-text-1 flex w-full cursor-pointer items-center justify-between gap-4 py-5 text-left text-base font-medium md:text-lg"><span>Can I try it without signing up?</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus text-brand-text-3 h-5 w-5 shrink-0 transition-transform duration-200 motion-reduce:transition-none rotate-45" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button><div id=":rl:" class="grid transition-[grid-template-rows] duration-300 ease-out motion-reduce:transition-none grid-rows-[1fr]"><div class="overflow-hidden"><p class="text-brand-text-2 pb-5 pr-9 text-sm leading-relaxed md:text-base md:leading-relaxed transition-opacity duration-200 motion-reduce:transition-none opacity-100">Yes. Both the Chrome extension and the Mac app have an anonymous mode with 10 lifetime AI actions (Save, Improve, Translate) to try the loop. Sign in to keep your captures across sessions and lift the limit.</p></div></div></div><div><button type="button" aria-expanded="false" aria-controls=":rm:" class="text-brand-text-1 flex w-full cursor-pointer items-center justify-between gap-4 py-5 text-left text-base font-medium md:text-lg"><span>Do I need the Chrome extension?</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus text-brand-text-3 h-5 w-5 shrink-0 transition-transform duration-200 motion-reduce:transition-none" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button><div id=":rm:" class="grid transition-[grid-template-rows] duration-300 ease-out motion-reduce:transition-none grid-rows-[0fr]"><div class="overflow-hidden"><p class="text-brand-text-2 pb-5 pr-9 text-sm leading-relaxed md:text-base md:leading-relaxed transition-opacity duration-200 motion-reduce:transition-none opacity-0">No. The web app works on its own — read books from the shelf, add Word Libraries, practise and track your progress. The Chrome extension and the Mac app add capture from everything else you read.</p></div></div></div><div><button type="button" aria-expanded="false" aria-controls=":rn:" class="text-brand-text-1 flex w-full cursor-pointer items-center justify-between gap-4 py-5 text-left text-base font-medium md:text-lg"><span>What does the Mac app need?</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus text-brand-text-3 h-5 w-5 shrink-0 transition-transform duration-200 motion-reduce:transition-none" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button><div id=":rn:" class="grid transition-[grid-template-rows] duration-300 ease-out motion-reduce:transition-none grid-rows-[0fr]"><div class="overflow-hidden"><p class="text-brand-text-2 pb-5 pr-9 text-sm leading-relaxed md:text-base md:leading-relaxed transition-opacity duration-200 motion-reduce:transition-none opacity-0">macOS 12 or later, plus the Accessibility permission so it can read the text you select — it never reads your clipboard. The app is signed and notarized by Apple. On macOS 15 and later it can also translate on-device: free, offline and no credits.</p></div></div></div><div><button type="button" aria-expanded="false" aria-controls=":ro:" class="text-brand-text-1 flex w-full cursor-pointer items-center justify-between gap-4 py-5 text-left text-base font-medium md:text-lg"><span>Is my data private?</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus text-brand-text-3 h-5 w-5 shrink-0 transition-transform duration-200 motion-reduce:transition-none" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button><div id=":ro:" class="grid transition-[grid-template-rows] duration-300 ease-out motion-reduce:transition-none grid-rows-[0fr]"><div class="overflow-hidden"><p class="text-brand-text-2 pb-5 pr-9 text-sm leading-relaxed md:text-base md:leading-relaxed transition-opacity duration-200 motion-reduce:transition-none opacity-0">Your data stays in KeepReap's database and we never sell it. Google is used only when you choose Google sign-in; email/password sign-in stays first-party. Our website uses Google Analytics and loads Google AdSense, but neither sets cookies unless you accept them. SOC2 work is out of scope while we are in Early Access.</p></div></div></div><div><button type="button" aria-expanded="false" aria-controls=":rp:" class="text-brand-text-1 flex w-full cursor-pointer items-center justify-between gap-4 py-5 text-left text-base font-medium md:text-lg"><span>Is it free?</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus text-brand-text-3 h-5 w-5 shrink-0 transition-transform duration-200 motion-reduce:transition-none" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button><div id=":rp:" class="grid transition-[grid-template-rows] duration-300 ease-out motion-reduce:transition-none grid-rows-[0fr]"><div class="overflow-hidden"><p class="text-brand-text-2 pb-5 pr-9 text-sm leading-relaxed md:text-base md:leading-relaxed transition-opacity duration-200 motion-reduce:transition-none opacity-0">Yes. The Free plan includes 200 AI credits a month, unlimited built-in translation for supported languages and up to 20 books on your shelf. Plus and Pro add more credits and remove the book limit — see Pricing above.</p></div></div></div><div><button type="button" aria-expanded="false" aria-controls=":rq:" class="text-brand-text-1 flex w-full cursor-pointer items-center justify-between gap-4 py-5 text-left text-base font-medium md:text-lg"><span>Does it work in browsers other than Chrome?</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus text-brand-text-3 h-5 w-5 shrink-0 transition-transform duration-200 motion-reduce:transition-none" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button><div id=":rq:" class="grid transition-[grid-template-rows] duration-300 ease-out motion-reduce:transition-none grid-rows-[0fr]"><div class="overflow-hidden"><p class="text-brand-text-2 pb-5 pr-9 text-sm leading-relaxed md:text-base md:leading-relaxed transition-opacity duration-200 motion-reduce:transition-none opacity-0">The extension is Chrome-only for now — Firefox and Safari come after Early Access. On a Mac you don't have to wait: the Mac app reads your selection at the system level, so it works in Safari, Firefox and every other app.</p></div></div></div></div></div></section><footer class="bg-brand-primary text-brand-on-primary px-6 pb-6 pt-16 md:pb-8 md:pt-20"><div class="mx-auto max-w-6xl"><div class="grid grid-cols-1 gap-12 md:grid-cols-4 md:gap-16"><div><a class="focus-visible:ring-brand-on-primary inline-flex rounded-full focus-visible:outline-none focus-visible:ring-2" aria-label="KeepReap" href="/"><span class="text-brand-mark-on-dark inline-flex items-center gap-2"><svg viewBox="314 423 1159 947" fill="currentColor" xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 text-brand-mark-light" role="img" aria-label="KeepReap">
2832<g transform="scale(1.0078431 1)"><path d="M407.077 423.744C454.055 419.645 499.592 453.121 510.437 498.827C514.448 515.731 513.5 535.845 513.518 553.28L513.543 609.641L513.494 810.679L584.363 810.714C616.791 810.723 644.986 813.222 675.933 802.119C702.761 792.335 726.315 775.235 743.928 752.759C779.326 708.065 780.761 668.342 780.735 614.973L780.686 550.174C780.676 524.927 779.513 506.899 790.93 483.376C802.791 458.921 823.929 440.217 849.646 431.419C858.433 428.491 867.565 426.721 876.811 426.156C893.686 425.052 920.364 425.871 937.863 425.904L1047.73 425.899L1144.94 425.884C1169.97 425.887 1194.79 425.113 1219.65 428.32C1249.77 432.191 1279.02 441.062 1306.22 454.568C1375.92 488.946 1429.18 549.49 1454.41 622.992C1479.84 697.011 1474.94 778.09 1440.75 848.501C1405.05 920.889 1346.52 970.784 1270.35 996.653C1284.39 1014.92 1302.94 1036.08 1317.9 1054.07L1403.79 1157.43L1439.17 1199.8C1445.42 1207.37 1453.95 1217.22 1458.93 1225.29C1465.84 1236.66 1470.34 1249.35 1472.12 1262.54C1475.61 1288.09 1468.63 1313.96 1452.76 1334.27C1438.02 1353.6 1416.21 1366.27 1392.12 1369.5C1332.71 1376.9 1305.13 
28321329.41 1271.8 1289.75L1169.1 1167.54L1055.8 1031.76L1019.41 988.194C1013.52 981.158 1004.39 970.915 999.336 963.625C991.72 952.759 987.047 940.1 985.782 926.898C983.428 905.684 989.753 884.418 1003.31 867.923C1018.01 849.91 1037.28 841.433 1060.03 839.239C1065.6 838.44 1083.9 838.831 1090.32 838.843L1141.36 838.968C1182.6 839.065 1214.24 837.328 1246.21 805.922C1269.65 782.879 1282.85 751.377 1282.82 718.505C1282.85 686.217 1271.38 654.229 1248.24 631.294C1233.74 616.845 1215.5 606.712 1195.58 602.023C1175.88 597.356 1132 598.993 1109.75 598.998L976.936 599.032C976.918 618.967 977.349 641.632 976.391 661.241C972.649 737.499 943.3 811.219 892.008 867.981C881.247 879.894 871.686 888.362 859.649 899.096C870.522 907.388 880.825 916.418 890.471 926.099C940.147 976.001 971.05 1041.54 977.937 1111.61C979.949 1132.03 979.422 1154.44 979.413 1175.1L979.44 1257.02C979.396 1290.63 975.206 1317.21 949.836 1342.21C930.888 1360.73 905.325 1370.92 878.831 1370.51C858.083 1370.3 837.933 1363.55 821.242 1351.24C802.312 1337.37 788.944 1317.21 783.544 1294.38C779.594 1277.81 780.66 1257.87 780.677 1240.61L780.771 1169.76C780.848 1112.93 779.63 1067.66 735.92 1023.59C712.125 999.28 680.696 983.881 646.9 979.981C630.953 978.303 609.192 978.883 592.729 978.883L513.725 978.847C513.056 1004.78 513.465 1032.01 513.474 1058.05L513.488 1192.87C513.496 1216.55 513.428 1240.29 513.44 1263.96C513.452 1290.39 508.447 1311.86 491.641 1332.87C475.342 1353.56 451.428 1366.87 425.245 1369.81C398.611 1372.99 371.816 1365.33 350.899 1348.54C330.32 1331.97 317.215 1307.87 314.502 1281.59C313.181 1268.11 313.761 1247.71 313.767 1233.58L313.8 1152.59L313.807 886.666L313.773 635.042L313.768 557.578C313.773 544.267 313.221 524.309 314.605 511.735C316.703 492.882 324.253 475.051 336.331 460.424C354.582 438.248 378.693 426.341 407.077 423.744Z" fill="currentColor"></path></g>
2833</svg><span class="text-xl font-bold">KeepReap</span></span></a><p class="text-brand-on-dark-soft mt-4 max-w-[320px] text-sm leading-relaxed">Keep what matters. Reap what stays.</p><p class="text-brand-on-primary mt-8 text-sm font-semibold">Questions? Feedback? Ideas?</p><p class="text-brand-on-dark-soft mt-1 text-sm">We'd love to hear from you:</p><a href="/cdn-cgi/l/email-protection#b4c7c1c4c4dbc6c0f4dfd1d1c4c6d1d5c49ad7dbd9" class="text-brand-on-primary hover:text-brand-on-dark-soft mt-3 inline-flex items-center gap-2 text-sm transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mail h-4 w-4" aria-hidden="true"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg><span class="__cf_email__" data-cfemail="22515752524d50566249474752504743520c414d4f">[email&#160;protected]</span></a></div><div><p class="text-brand-on-dark-soft mb-6 font-mono text-xs font-semibold uppercase tracking-[0.18em]">Product</p><ul class="space-y-3"><li><a href="/#capture" class="text-brand-on-primary hover:text-brand-on-dark-soft text-sm transition-colors">Capture</a></li><li><a href="/#how-it-works" class="text-brand-on-primary hover:text-brand-on-dark-soft text-sm transition-colors">How it works</a></li><li><a href="/#work-scenarios" class="text-brand-on-primary hover:text-brand-on-dark-soft text-sm transition-colors">Work scenarios</a></li><li><a href="/#faq" class="text-brand-on-primary hover:text-brand-on-dark-soft text-sm transition-colors">FAQ</a></li><li><a href="/s" class="text-brand-on-primary hover:text-brand-on-dark-soft text-sm transition-colors">Explore</a></li><li><a class="text-brand-on-primary hover:text-brand-on-dark-soft text-sm transition-colors" href="/books">Public books</a></li><li><a class="text-brand-on-primary hover:text-brand-on-dark-soft text-sm transition-colors" href="/admin/home">Web App</a></li><li><a href="https://chromewebstore.google.com/detail/keepreap/oejbdpilpmhphopjidgpfbonoepgngim" target="_blank" rel="noopener noreferrer" class="text-brand-on-primary hover:text-brand-on-dark-soft text-sm transition-colors">Chrome Extension</a></li><li><a href="https://github.com/ocxers/keepreap-releases/releases/latest/download/KeepReap-macOS.dmg" class="text-brand-on-primary hover:text-brand-on-dark-soft text-sm transition-colors">Mac App</a></li></ul></div><div><p class="text-brand-on-dark-soft mb-6 font-mono text-xs font-semibold uppercase tracking-[0.18em]">Languages</p><ul class="space-y-3"><li><a hreflang="en" aria-current="true" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors font-semibold" href="/">English</a></li><li><a hreflang="zh-CN" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors" href="/zh-cn">简体中文</a></li><li><a hreflang="zh-TW" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors" href="/zh-tw">繁體中文</a></li><li><a hreflang="ja" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors" href="/ja">日本語</a></li><li><a hreflang="ko" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors" href="/ko">한국어</a></li><li><a hreflang="mk" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors" href="/mk">македонски</a></li><li><a hreflang="uk" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors" href="/uk">Українська</a></li><li><a hreflang="fil" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors" href="/fil">Filipino</a></li><li><a hreflang="vi" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors" href="/vi">Tiếng Việt</a></li></ul></div><div><p class="text-brand-on-dark-soft mb-6 font-mono text-xs font-semibold uppercase tracking-[0.18em]">Theme</p><ul class="space-y-3"><li><button type="button" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors" aria-pressed="false">Light</button></li><li><button type="button" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors font-semibold" aria-pressed="true">Warm</button></li><li><button type="button" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors" aria-pressed="false">Ink</button></li><li><button type="button" class="text-brand-on-primary hover:text-brand-on-dark-soft text-left text-sm transition-colors" aria-pressed="false">Night</button></li></ul></div></div><div class="mt-16"><p class="text-brand-on-dark-soft mb-4 font-mono text-xs font-semibold uppercase tracking-[0.18em]">Friends</p><ul class="flex flex-wrap gap-x-6 gap-y-3"><li><a href="https://soulvirtues.com/" target="_blank" rel="noopener noreferrer" class="text-brand-on-primary hover:text-brand-on-dark-soft text-sm transition-colors">Soul Virtues Extractor</a></li><li><a href="https://relocateireland.ie/" target="_blank" rel="noopener noreferrer" class="text-brand-on-primary hover:text-brand-on-dark-soft text-sm transition-colors">Relocate Ireland</a></li></ul></div><div class="border-brand-surface-dark-elevated mt-10 flex flex-col items-center justify-between gap-4 border-t pt-8 md:flex-row"><p class="text-brand-on-dark-soft order-3 inline-flex items-center gap-1.5 text-xs md:order-1">Made for people who reap what they read.<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="currentColor" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-heart text-brand-accent-amber h-3 w-3" aria-hidden="true"><path d="M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z"></path></svg></p><nav aria-label="Footer" class="text-brand-on-primary order-1 flex items-center gap-6 text-xs md:order-2"><a class="hover:text-brand-on-dark-soft transition-colors" href="/privacy">Privacy</a><a class="hover:text-brand-on-dark-soft transition-colors" href="/terms">Terms</a><a class="hover:text-brand-on-dark-soft transition-colors" href="/support">Support</a></nav><p class="text-brand-on-dark-soft order-2 text-xs md:order-3">© 2026 KeepReap. All rights reserved.</p></div></div></footer></main><section role="region" aria-label="Cookies and analytics" class="bg-brand-bg border-brand-border-subtle fixed bottom-4 left-4 right-4 z-50 rounded-2xl border p-4 shadow-lg sm:right-auto sm:max-w-sm"><p class="text-brand-text-1 text-sm font-medium">Cookies and analytics</p><p class="text-brand-text-2 mt-1 text-sm leading-relaxed">We use Google Analytics to understand how KeepReap is used, and our pages load Google AdSense. Neither sets cookies unless you accept. Read our <a class="text-brand-text-1 underline underline-offset-2" href="/privacy">Privacy Policy</a>.</p><div class="mt-3 flex justify-end gap-2"><button type="button" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none bg-transparent text-brand-text-1 border border-brand-border hover:bg-brand-surface focus-visible:ring-brand-text-1 h-8 px-4 text-xs">Decline</button><button type="button" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-full font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none bg-brand-primary text-brand-on-primary hover:bg-brand-primary-hover focus-visible:ring-brand-link h-8 px-4 text-xs">Accept</button></div></section></div>
vendor: 113 bytes, lines 2833-2836
2833
2834  
2835
2836<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
2836<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"f1f816d008ef40e198393b30f1df4112","r":1,"spa":2}' crossorigin="anonymous"></script>
2836
2837</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.