.pm-vim-mode-normal{caret-color:transparent}.pm-vim-mode-normal .ProseMirror-cursorWrapper:before,.pm-vim-mode-normal .ProseMirror-separator:before{content:"";position:absolute;width:1ch;height:1.2em;background:currentColor;opacity:.25;pointer-events:none;transform:translate(0)}.pm-vim-mode-visual ::selection{background-color:color-mix(in oklab,royalblue 40%,transparent)}.pm-vim-mode-visual::selection,.pm-vim-mode-visual *::selection{background-color:color-mix(in oklab,royalblue 40%,transparent)}.pm-vim-mode-visual .pm-vim-linewise{background-color:color-mix(in oklab,currentColor 10%,transparent)}.ProseMirror{line-height:1.5}.pm-vim-search-match{background-color:color-mix(in oklab,goldenrod 35%,transparent)}.pm-vim-dialog{display:flex;gap:6px;align-items:center;padding:4px 8px;font-family:ui-monospace,monospace;font-size:13px;background:color-mix(in oklab,currentColor 8%,transparent);border-top:1px solid color-mix(in oklab,currentColor 20%,transparent)}.pm-vim-dialog input{flex:1;border:0;background:transparent;font:inherit;color:inherit;outline:none}.pm-vim-statusbar{font-family:ui-monospace,monospace;font-size:12px;padding:2px 8px;opacity:.7}.pm-vim-statusbar__mode[data-mode=normal]{color:color-mix(in oklab,steelblue 80%,currentColor)}.pm-vim-statusbar__mode[data-mode=insert]{color:color-mix(in oklab,seagreen 80%,currentColor)}.pm-vim-statusbar__mode[data-mode=visual]{color:color-mix(in oklab,darkorange 80%,currentColor)}:root{--bg: #0d1117;--panel: #161b22;--panel-2: #1c2330;--border: #2a3340;--text: #d6deeb;--muted: #8b98ad;--accent: #7ee787;--accent-2: #79c0ff;--orange: #ffa657;--cursor-bg: var(--accent);--cursor-fg: #0d1117;color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(1200px 600px at 80% -10%,#14213a 0%,transparent 60%),var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.page{max-width:1080px;margin:0 auto;padding:48px 24px 64px}.hero{margin-bottom:32px}.hero__title{display:flex;align-items:center;gap:12px}.logo{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:var(--accent);color:#07210d;font-family:ui-monospace,monospace;font-weight:800;font-size:24px;line-height:1}.hero h1{margin:0;font-size:30px;letter-spacing:-.02em}.tagline{margin:16px 0 8px;font-size:17px;line-height:1.6;color:var(--text);max-width:64ch}.hint{margin:0;font-size:14px;color:var(--muted);max-width:64ch;line-height:1.6}.grid{display:grid;grid-template-columns:1fr 280px;gap:20px;align-items:start}.stack{display:grid;gap:20px}@media (max-width: 820px){.grid{grid-template-columns:1fr}}.editor-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 12px 30px #00000040}.editor-head{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--panel-2);border-bottom:1px solid var(--border)}.badge{font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;background:color-mix(in oklab,var(--accent-2) 22%,transparent);color:var(--accent-2)}.badge--alt{background:color-mix(in oklab,var(--accent) 18%,transparent);color:var(--accent)}.status{font-family:ui-monospace,monospace;font-size:11px;font-weight:700;letter-spacing:.08em;padding:3px 10px;border-radius:6px;background:#0c1018;color:var(--muted);border:1px solid var(--border)}.status[data-mode=normal]{color:var(--accent-2);border-color:color-mix(in oklab,var(--accent-2) 50%,transparent)}.status[data-mode=insert]{color:var(--accent);border-color:color-mix(in oklab,var(--accent) 50%,transparent)}.status[data-mode=visual]{color:var(--orange);border-color:color-mix(in oklab,var(--orange) 50%,transparent)}.editor{padding:16px 18px}.editor .ProseMirror{outline:none;min-height:120px;line-height:1.7;font-size:14px;font-family:ui-monospace,SF Mono,JetBrains Mono,Fira Code,Menlo,Consolas,monospace}.editor .ProseMirror:focus{outline:none}.editor .ProseMirror h2{font-size:19px;margin:0 0 10px}.editor .ProseMirror p{margin:0 0 10px}.editor .ProseMirror ul{margin:8px 0;padding-left:22px}.editor .ProseMirror li{margin:2px 0}.editor .ProseMirror code{font-family:ui-monospace,monospace;font-size:.86em;background:#0c1018;border:1px solid var(--border);border-radius:5px;padding:1px 5px}.editor .ProseMirror.pm-vim-mode-normal,.editor .ProseMirror.pm-vim-mode-visual{caret-color:transparent}.editor .ProseMirror.pm-vim-mode-insert{caret-color:var(--accent)}.editor .ProseMirror{counter-reset:vimline;padding-left:3.4em}.editor .ProseMirror>*{counter-increment:vimline;position:relative}.editor .ProseMirror>*:before{content:counter(vimline);position:absolute;left:-3.4em;width:2.6em;text-align:right;font-family:ui-monospace,monospace;font-size:.8em;line-height:inherit;color:color-mix(in oklab,var(--muted) 70%,transparent);-webkit-user-select:none;user-select:none;pointer-events:none}.pm-block-cursor{background:var(--cursor-bg);color:var(--cursor-fg);border-radius:2px}.pm-block-cursor--eol{display:inline-block;width:.62ch;background:var(--cursor-bg);border-radius:2px}.pm-vim-mode-visual .pm-block-cursor,.pm-vim-mode-visual .pm-block-cursor--eol{--cursor-bg: var(--orange)}.cheats{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px 18px;position:sticky;top:24px}.cheats h3{margin:0 0 12px;font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.cheats dl{margin:0;display:grid;gap:10px}.cheats dt{font-size:12px;color:var(--muted);margin-bottom:3px}.cheats dd{margin:0;font-size:13px;line-height:1.7}.install{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--border)}.install code{font-family:ui-monospace,monospace;font-size:12px;color:var(--accent)}kbd{font-family:ui-monospace,monospace;font-size:.82em;background:#0c1018;border:1px solid var(--border);border-bottom-width:2px;border-radius:5px;padding:1px 5px;color:var(--text)}code{font-family:ui-monospace,monospace}.tagline code,.hint code{font-size:.88em;background:#0c1018;border:1px solid var(--border);border-radius:5px;padding:0 5px}.foot{margin-top:36px;text-align:center;font-size:13px;color:var(--muted)}.foot a{color:var(--accent-2);text-decoration:none}.foot a:hover{text-decoration:underline}
