:root{--sans:"Mulish", system-ui, -apple-system, "Segoe UI", sans-serif;--ink:#1f242b;--ink-soft:#5b626d;--ink-faint:#9499a3;--surface:#fff;--app:#f5f6f8;--panel:#f7f8fa;--line:#e6e8ec;--line-soft:#eef0f3;--accent:#d4583a;--accent-deep:#b8472c;--accent-soft:#d4583a1a;--accent-tint:#d4583a2e;--add:#2f9e6b;--del:#e05547;--replace:#d79a32;--shadow-sm:0 1px 2px #1c23300f;--shadow-pop:0 4px 14px -4px #1c233024;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--app);color:var(--ink);font:14px/1.5 var(--sans)}.app{flex-direction:column;height:100%;display:flex}.main{flex:1;grid-template-columns:auto 1fr auto;min-height:0;display:grid}.pads{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;width:204px;min-height:0;display:flex}.pads-header{justify-content:space-between;align-items:center;padding:14px 10px 10px 14px;display:flex}.brand{letter-spacing:-.02em;color:var(--ink);align-items:center;gap:7px;font-size:16px;font-weight:800;display:inline-flex}.brand-mark{width:16px;height:16px;color:var(--accent)}.collapse-toggle{font:600 15px/1 var(--sans);width:24px;height:24px;color:var(--ink-faint);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;transition:background .14s,color .14s}.collapse-toggle:hover{color:var(--accent);background:var(--accent-soft)}.pads.collapsed{align-items:center;width:44px;padding:14px 0}.new-pad{font:600 13px/1 var(--sans);color:#fff;background:var(--accent);cursor:pointer;text-align:left;border:none;border-radius:8px;margin:2px 8px 6px;padding:9px 10px;transition:background .14s,transform .1s}.new-pad:hover{background:var(--accent-deep)}.new-pad:active{transform:scale(.985)}.pad-list{padding:2px 6px 10px;overflow:hidden auto}.pad-row{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:7px;align-items:center;gap:6px;margin:1px 0;padding:7px 9px;transition:background .12s;display:flex}.pad-row:hover{background:#2830400d}.pad-row.active{background:var(--surface);border-color:var(--line);box-shadow:var(--shadow-sm)}.pad-row.active .pad-name{color:var(--ink);font-weight:600}.pad-name{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft);flex:1;font-size:13.5px;overflow:hidden}.pad-delete{color:var(--ink-faint);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:5px;padding:2px 5px;font-size:11px;transition:opacity .12s,color .12s,background .12s}.pad-row:hover .pad-delete{opacity:1}.pad-delete:hover{color:var(--del);background:#e055471f}.editor-col{background:var(--surface);flex-direction:column;min-height:0;display:flex}.editor-bar{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:10px;padding:10px 18px 10px 20px;display:flex}.editor-title{letter-spacing:-.01em;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.editor-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.branch-switch{font:inherit;color:var(--ink-soft);background:color-mix(in srgb, var(--replace) 14%, var(--surface));border:1px solid color-mix(in srgb, var(--replace) 35%, var(--line));cursor:pointer;text-align:left;border-radius:8px;align-items:center;gap:7px;padding:6px 10px 6px 8px;transition:background .14s,border-color .14s,color .14s;display:inline-flex}.branch-switch svg{width:15px;height:15px;color:var(--replace);flex-shrink:0}.branch-switch-label{color:var(--ink);font-size:12.5px;font-weight:600;line-height:1.2}.branch-switch:hover{color:var(--ink);border-color:color-mix(in srgb, var(--replace) 55%, var(--line));background:color-mix(in srgb, var(--replace) 22%, var(--surface))}.branch-switch:active{transform:scale(.985)}.format-toolbar{background:var(--surface);border:1px solid var(--line);border-radius:8px;align-items:center;gap:2px;padding:3px;display:inline-flex}.format-btn{min-width:28px;height:28px;font:600 12.5px/1 var(--sans);color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;padding:0 6px;transition:background .14s,color .14s;display:inline-flex}.format-btn.format-bold{font-weight:800}.format-btn.format-italic{font-style:italic}.format-btn.format-underline{text-underline-offset:2px;text-decoration:underline}.format-btn.format-numbered{letter-spacing:-.02em;font-size:11px}.format-btn:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 6%, var(--surface))}.format-btn:active{transform:scale(.96)}.clear-board{font:600 12.5px/1 var(--sans);color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:8px;flex-shrink:0;align-items:center;gap:7px;padding:7px 11px;transition:background .14s,color .14s,border-color .14s;display:inline-flex}.clear-board svg{width:15px;height:15px}.clear-board:hover:not(:disabled){color:var(--accent);border-color:var(--accent-tint);background:var(--accent-soft)}.clear-board:active:not(:disabled){transform:scale(.985)}.clear-board:disabled{opacity:.45;cursor:default}.editor-host{background:var(--surface);flex:1;min-height:0;overflow:hidden}.editor-host .cm-editor{background:0 0;height:100%}.editor-host .cm-editor.cm-focused{outline:none}.editor-host .cm-scroller{font-family:var(--sans);justify-content:center;padding:0 28px;overflow:auto}.editor-host .cm-content{width:100%;max-width:760px;color:var(--ink);caret-color:var(--accent);margin:0 auto;padding:28px 4px 200px;font-size:16px;line-height:1.65}.editor-host .cm-line{padding:0}.editor-host .cm-cursor{border-left-color:var(--accent);border-left-width:2px}.editor-host .cm-selectionBackground,.editor-host .cm-focused .cm-selectionBackground{background:var(--accent-soft)}.editor-host .cm-placeholder{color:var(--ink-faint)}.history{background:var(--panel);border-left:1px solid var(--line);flex-direction:column;width:248px;min-height:0;display:flex}.history.collapsed{align-items:center;width:44px;padding:14px 0}.history-header{border-bottom:1px solid var(--line-soft);flex-direction:column;gap:10px;padding:14px 14px 12px;display:flex}.history-header-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.history-titles{flex-direction:column;gap:1px;display:flex}.history-title{color:var(--ink);font-size:13.5px;font-weight:700}.history-sub{color:var(--ink-faint);font-size:11px}.mode-switch{background:#2830400d;border-radius:8px;gap:2px;padding:2px;display:flex}.mode-tab{font:600 11.5px/1 var(--sans);color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:6px 8px;transition:background .14s,color .14s,box-shadow .14s}.mode-tab:hover:not(.on){color:var(--ink)}.mode-tab.on{color:var(--ink);background:var(--surface);box-shadow:var(--shadow-sm)}.history-tree.milestones{padding:6px 8px 8px}.milestones-empty{color:var(--ink-faint);margin:14px 8px;font-size:12px;line-height:1.55}.milestones-empty strong{color:var(--ink-soft);font-weight:600}.day-head{font:700 10.5px/1 var(--sans);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);padding:12px 8px 5px}.day-head:first-child{padding-top:4px}.milestone{text-align:left;border:1px solid #0000;border-left:2px solid var(--line);cursor:pointer;background:0 0;border-radius:0 8px 8px 0;flex-direction:column;gap:3px;width:100%;margin:2px 0;padding:7px 9px 8px;transition:background .12s,border-color .12s;display:flex}.milestone:hover{background:#2830400b}.milestone.current{background:var(--surface);border-color:var(--line);border-left-color:var(--accent);box-shadow:var(--shadow-sm)}.milestone-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.milestone-label{color:var(--ink);font-size:12.5px;font-weight:600}.milestone-time{color:var(--ink-faint);flex-shrink:0;font-size:10.5px}.milestone-preview{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.4;overflow:hidden}.milestone-preview em{color:var(--ink-faint)}.milestone-meta{color:var(--ink-faint);font-size:10.5px}.milestone.kind-page{border-left-color:var(--accent)}.milestone.kind-add{border-left-color:var(--add)}.milestone.kind-resume{border-left-color:var(--replace)}.milestone.kind-start{border-left-color:var(--ink-faint)}.history-tree{flex:1;padding:8px;overflow:hidden auto}.node-row{flex-direction:column;min-width:0;display:flex}.node-row.branch{border-left:2px solid var(--line);margin-left:10px;padding-left:9px}.node{width:100%;max-width:100%;font:12.5px/1.35 var(--sans);color:var(--ink-soft);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:8px;margin:1px 0;padding:6px 8px;transition:background .12s,color .12s;display:flex}.node:hover{color:var(--ink);background:#2830400d}.node.current{background:var(--surface);border-color:var(--line);box-shadow:var(--shadow-sm);color:var(--ink);font-weight:600}.node-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dot{background:var(--ink-faint);border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 3px #ffffffb3}.dot.kind-input{background:var(--add)}.dot.kind-delete{background:var(--del)}.dot.kind-replace{background:var(--replace)}.dot.kind-root{background:var(--accent)}.branch-tag{color:var(--accent);margin-left:auto;font-size:11px}.branch-alts{border-left:2px dashed var(--line);flex-direction:column;gap:2px;margin:0 0 4px 24px;padding-left:8px;display:flex}.branch-alt{width:100%;font:11.5px/1.3 var(--sans);color:var(--ink-soft);border:1px solid var(--line);cursor:pointer;text-align:left;background:#28304008;border-radius:6px;align-items:center;gap:6px;padding:5px 8px;transition:background .12s,border-color .12s,color .12s;display:flex}.branch-alt:hover{background:var(--accent-soft);border-color:var(--accent-tint);color:var(--ink)}.branch-alt-arrow{width:14px;color:var(--accent);text-align:center;flex-shrink:0;font-size:12px;font-weight:700}.branch-alt-label{flex-shrink:0;font-weight:600}.branch-alt-preview{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-faint);margin-left:auto;overflow:hidden}.branch-alt:hover .branch-alt-preview{color:var(--ink-soft)}.node.pulse{animation:.9s ease-out 2 fork-pulse}@keyframes fork-pulse{0%{background:var(--accent-soft);box-shadow:0 0 0 0 var(--accent-tint)}45%{background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-tint)}to{background:0 0;box-shadow:0 0 #0000}}.history-hint{border-top:1px solid var(--line-soft);color:var(--ink-faint);margin-top:auto;padding:10px 14px;font-size:11px;line-height:1.55}.history-hint kbd{font-family:var(--sans);border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);border-bottom-width:2px;border-radius:4px;padding:1px 4px;font-size:10px;font-weight:600}.pad-list::-webkit-scrollbar{width:10px}.history-tree::-webkit-scrollbar{width:10px}.cm-scroller::-webkit-scrollbar{width:10px}.pad-list::-webkit-scrollbar-thumb{background:#28304029 padding-box padding-box;border:3px solid #0000;border-radius:999px}.history-tree::-webkit-scrollbar-thumb{background:#28304029 padding-box padding-box;border:3px solid #0000;border-radius:999px}.cm-scroller::-webkit-scrollbar-thumb{background:#28304029 padding-box padding-box;border:3px solid #0000;border-radius:999px}.pad-list::-webkit-scrollbar-thumb:hover{background:#2830404d padding-box padding-box}.history-tree::-webkit-scrollbar-thumb:hover{background:#2830404d padding-box padding-box}.cm-scroller::-webkit-scrollbar-thumb:hover{background:#2830404d padding-box padding-box}.history-search-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1c233047;justify-content:center;align-items:flex-start;padding:min(12vh,96px) 16px 16px;display:flex;position:fixed;inset:0}.history-search{background:var(--surface);border:1px solid var(--line);width:min(560px,100%);box-shadow:var(--shadow-pop);border-radius:14px;overflow:hidden}.history-search-input-wrap{border-bottom:1px solid var(--line-soft);align-items:center;gap:10px;padding:14px 16px;display:flex}.history-search-icon{width:18px;height:18px;color:var(--ink-faint);flex-shrink:0}.history-search-input{min-width:0;font:15px/1.4 var(--sans);color:var(--ink);background:0 0;border:none;outline:none;flex:1}.history-search-input::placeholder{color:var(--ink-faint)}.history-search-input::-webkit-search-cancel-button{-webkit-appearance:none}.history-search-kbd{font-family:var(--sans);border:1px solid var(--line);background:var(--panel);color:var(--ink-faint);border-bottom-width:2px;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:600}.history-search-results{max-height:min(50vh,360px);margin:0;padding:6px;list-style:none;overflow-y:auto}.history-search-empty{text-align:center;color:var(--ink-faint);padding:20px 12px;font-size:13px}.history-search-row{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;flex-direction:column;gap:3px;padding:10px 12px;transition:background .12s,border-color .12s;display:flex}.history-search-row:hover,.history-search-row.selected{background:var(--accent-soft);border-color:var(--accent-tint)}.history-search-row.current{border-left:3px solid var(--accent);padding-left:9px}.history-search-row-top{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.history-search-row-label{color:var(--ink);font-size:12px;font-weight:700}.history-search-row-time{color:var(--ink-faint);white-space:nowrap;font-size:11px}.history-search-row-preview{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.45;overflow:hidden}.history-search-row-preview em{color:var(--ink-faint);font-style:italic}.history-search-hint{border-top:1px solid var(--line-soft);color:var(--ink-faint);padding:9px 14px;font-size:11px}.history-search-hint kbd{font-family:var(--sans);border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);border-bottom-width:2px;border-radius:4px;padding:1px 4px;font-size:10px;font-weight:600}.history-search-results::-webkit-scrollbar{width:10px}.history-search-results::-webkit-scrollbar-thumb{background:#28304029 padding-box padding-box;border:3px solid #0000;border-radius:999px}.time-travel-btn{font:600 12.5px/1 var(--sans);color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:8px;flex-shrink:0;align-items:center;gap:7px;padding:7px 11px;transition:background .14s,color .14s,border-color .14s;display:inline-flex}.time-travel-btn svg{width:15px;height:15px}.time-travel-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent-tint);background:var(--accent-soft)}.time-travel-btn:active:not(:disabled){transform:scale(.985)}.time-travel-btn:disabled{opacity:.45;cursor:default}.time-travel-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1c233047;justify-content:center;align-items:flex-start;padding:min(12vh,96px) 16px 16px;display:flex;position:fixed;inset:0}.time-travel{background:var(--surface);border:1px solid var(--line);width:min(580px,100%);box-shadow:var(--shadow-pop);border-radius:14px;overflow:hidden}.time-travel-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 16px 12px;display:flex}.time-travel-titles{flex-direction:column;gap:3px;display:flex}.time-travel-title{color:var(--ink);font-size:15px;font-weight:800}.time-travel-sub{color:var(--ink-faint);font-size:12.5px}.time-travel-close{width:26px;height:26px;color:var(--ink-faint);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;font-size:20px;line-height:1;transition:background .12s,color .12s}.time-travel-close:hover{color:var(--ink);background:var(--panel)}.time-travel-controls{border-bottom:1px solid var(--line-soft);padding:16px}.time-travel-slider{width:100%;accent-color:var(--accent);cursor:pointer}.time-travel-slider:disabled{opacity:.5;cursor:default}.time-travel-bounds{color:var(--ink-faint);justify-content:space-between;gap:12px;margin-top:6px;font-size:11px;display:flex}.time-travel-precise{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:12px;margin-top:14px;font-size:12.5px;display:flex}.time-travel-precise input{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:6px 8px}.time-travel-preview{padding:14px 16px}.time-travel-preview-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.time-travel-asof{color:var(--ink);font-size:12.5px;font-weight:700}.time-travel-words{color:var(--ink-faint);white-space:nowrap;font-size:11px}.time-travel-board{max-height:min(34vh,280px);color:var(--ink-soft);white-space:pre-wrap;word-break:break-word;background:var(--panel);border:1px solid var(--line-soft);border-radius:9px;padding:12px 14px;font-size:13.5px;line-height:1.5;overflow-y:auto}.time-travel-board em{color:var(--ink-faint);font-style:italic}.time-travel-foot{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;display:flex}.time-travel-hint{color:var(--ink-faint);font-size:11.5px}.time-travel-revert{font:700 13px/1 var(--sans);color:#fff;background:var(--accent);border:1px solid var(--accent-deep);cursor:pointer;border-radius:8px;flex-shrink:0;padding:9px 14px;transition:background .14s,transform .14s}.time-travel-revert:hover:not(:disabled){background:var(--accent-deep)}.time-travel-revert:active:not(:disabled){transform:scale(.98)}.time-travel-revert:disabled{color:var(--ink-faint);background:var(--panel);border-color:var(--line);cursor:default}.time-travel-board::-webkit-scrollbar{width:10px}.time-travel-board::-webkit-scrollbar-thumb{background:#28304029 padding-box padding-box;border:3px solid #0000;border-radius:999px}
