:root{--bg: #f7f6f3;--panel: #ffffff;--border: #e2ddd3;--ink: #2b2622;--muted: #8a8378;--accent: #b5651d;--accent-soft: #f3e7d8;--danger: #b23b3b;--success: #2f8a3b}@media (prefers-color-scheme: dark){:root:not([data-theme]){--bg: #1c1a17;--panel: #26231f;--border: #3a352e;--ink: #ece7df;--muted: #9a9284;--accent: #d38a4a;--accent-soft: #35291d}}:root[data-theme=dark]{--bg: #1c1a17;--panel: #26231f;--border: #3a352e;--ink: #ece7df;--muted: #9a9284;--accent: #d38a4a;--accent-soft: #35291d;--danger: #e06c6c;--success: #5bb36a}:root[data-theme=sepia]{--bg: #efe6d3;--panel: #f7f0e0;--border: #ddcdb0;--ink: #3a2f22;--muted: #8a765a;--accent: #a0642b;--accent-soft: #e6d4b8;--danger: #a83232;--success: #4a7a3a}:root[data-theme=night]{--bg: #12151c;--panel: #1a1f2b;--border: #2b3242;--ink: #e3e8f2;--muted: #8a93a6;--accent: #5b9bd5;--accent-soft: #1e2a3a;--danger: #e06c6c;--success: #5bb36a}:root[data-theme=forest]{--bg: #f0f3ec;--panel: #ffffff;--border: #d3ddc8;--ink: #263127;--muted: #6f7d68;--accent: #3f7d4e;--accent-soft: #dcead0;--danger: #b23b3b;--success: #2f8a3b}:root[data-theme=ocean]{--bg: #eef4f6;--panel: #ffffff;--border: #cfe0e4;--ink: #22323a;--muted: #6a828c;--accent: #1f7a8c;--accent-soft: #d4e8ec;--danger: #b23b3b;--success: #2f8a3b}:root[data-theme=plum]{--bg: #1a1620;--panel: #241d2c;--border: #382f42;--ink: #ece5f2;--muted: #9a8fa8;--accent: #b07cd0;--accent-soft: #2c2136;--danger: #e06c6c;--success: #6bbf7a}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--ink)}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--panel);color:var(--ink);padding:6px 12px;border-radius:6px}button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}button:disabled{opacity:.5;cursor:default}input,textarea,select{font:inherit;padding:7px 10px;border:1px solid var(--border);border-radius:6px;background:var(--panel);color:var(--ink);width:100%}a{color:var(--accent)}.topbar{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid var(--border);background:var(--panel)}.brand{font-weight:700;font-size:20px}.wrap{max-width:1100px;margin:0 auto;padding:20px}.card{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:12px}.list-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:8px;margin-bottom:8px;background:var(--panel)}.list-item:hover{border-color:var(--accent)}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row>input,.row>select,.row>textarea{flex:1 1 auto;width:auto;min-width:0}.item-actions>input,.item-actions>select{flex:0 0 auto}.col{display:flex;flex-direction:column;gap:8px}.muted{color:var(--muted);font-size:14px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:16px}.tab{padding:8px 14px;border:none;border-bottom:2px solid transparent;background:none;border-radius:0}.tab.active{border-bottom-color:var(--accent);color:var(--accent)}.grid2{display:grid;grid-template-columns:260px 1fr;gap:16px}@media (max-width: 720px){.grid2{grid-template-columns:1fr}}.editor .ProseMirror{min-height:72vh;padding:24px clamp(16px,5vw,56px);border:1px solid var(--border);border-radius:8px;background:var(--panel);outline:none;line-height:1.7;font-family:Georgia,Times New Roman,serif;font-size:18px;max-width:820px;margin:0 auto}.editor .ProseMirror:focus-within,.editor .ProseMirror:focus{border-color:var(--accent)}.editor .ProseMirror p{margin:0;text-indent:1.6em}.editor .ProseMirror>p:first-child,.editor .ProseMirror h1+p,.editor .ProseMirror h2+p,.editor .ProseMirror h3+p{text-indent:0}.editor .ProseMirror h1,.editor .ProseMirror h2,.editor .ProseMirror h3{margin:1em 0 .4em}.suggestion{border:1px solid var(--border);border-radius:8px;padding:10px;margin-bottom:8px}.suggestion del{color:#b23b3b}.suggestion ins{color:#2f8a3b;text-decoration:none}.err{color:#b23b3b;font-size:14px}.login-box{max-width:340px;margin:80px auto}.stream-out{white-space:pre-wrap;background:var(--accent-soft);padding:12px;border-radius:8px;min-height:40px}.pill{font-size:12px;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:1px 8px}.toolbar button{min-width:34px;padding:4px 8px}.toolbar button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.sugg-highlight{background:var(--accent-soft);border-bottom:2px dashed var(--accent);border-radius:2px;cursor:help}.scroll-box{max-height:22vh;overflow-y:auto}.suggestions-scroll{max-height:42vh;overflow-y:auto;padding-right:4px}.chat-log{max-height:56vh;display:flex;flex-direction:column;gap:12px}.chat-msg{display:flex;flex-direction:column;gap:2px;max-width:82%}.chat-user{align-self:flex-end;align-items:flex-end}.chat-assistant{align-self:flex-start;align-items:flex-start}.chat-role{font-size:12px}.chat-bubble{padding:8px 12px;border-radius:10px;white-space:pre-wrap;line-height:1.55}.chat-user .chat-bubble{background:var(--accent-soft);border:1px solid var(--border)}.chat-assistant .chat-bubble{background:var(--panel);border:1px solid var(--border)}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:8px}.cal-dow{text-align:center;font-size:12px;color:var(--muted);padding:2px 0}.cal-cell{min-height:56px;border:1px solid var(--border);border-radius:6px;padding:4px;background:var(--panel)}.cal-empty{border:none;background:transparent}.cal-today{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.cal-day{font-size:12px;color:var(--muted)}.cal-marks{display:flex;flex-wrap:wrap;gap:3px;margin-top:3px}.cal-mark{min-width:16px;height:16px;padding:0 3px;border-radius:8px;color:#fff;font-size:11px;line-height:16px;text-align:center}.usage-table{width:100%;border-collapse:collapse;font-size:14px}.usage-table th{text-align:left;color:var(--muted);font-weight:600;padding:4px 8px;border-bottom:1px solid var(--border)}.usage-table td{padding:4px 8px;border-bottom:1px solid var(--border)}.usage-table tr:last-child td{border-bottom:none}.usage-table th:not(:first-child),.usage-table td:not(:first-child){text-align:right;white-space:nowrap}.link-btn{background:none;border:none;padding:2px 0;margin-top:4px;color:var(--muted);font-size:12px;cursor:pointer}.link-btn:hover{color:var(--accent);text-decoration:underline}.note-row{border:1px solid var(--border);border-radius:8px;background:var(--panel);margin-bottom:8px}.note-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;cursor:pointer}.note-head:hover{background:var(--accent-soft)}.note-title{font-weight:600}.note-body{padding:0 12px 12px;border-top:1px solid var(--border)}.md{line-height:1.55}.md>:first-child{margin-top:0}.md h1,.md h2,.md h3,.md h4{margin:.6em 0 .3em;line-height:1.25}.md h1{font-size:1.4em}.md h2{font-size:1.2em}.md h3{font-size:1.05em}.md p{margin:.4em 0}.md ul,.md ol{margin:.4em 0;padding-left:1.4em}.md li{margin:.15em 0}.md code{background:var(--accent-soft);padding:0 4px;border-radius:4px;font-size:.9em}.md pre{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:10px;overflow-x:auto}.md pre code{background:none;padding:0}.md blockquote{margin:.5em 0;padding-left:12px;border-left:3px solid var(--border);color:var(--muted)}.md a{color:var(--accent)}.md img{max-width:100%}.md table{border-collapse:collapse}.md td,.md th{border:1px solid var(--border);padding:4px 8px}.list-item[draggable=true]{cursor:grab}.list-item.dragging{opacity:.45}.list-item.dragover{border-color:var(--accent);border-style:dashed}.toast-host{position:fixed;right:16px;bottom:16px;z-index:60;display:flex;flex-direction:column;gap:8px;max-width:360px}.toast{padding:10px 14px;border-radius:8px;border:1px solid var(--border);background:var(--panel);color:var(--ink);font-size:14px;cursor:pointer;box-shadow:0 4px 16px #0000002e}.toast-error{border-left:3px solid #b23b3b}.toast-success{border-left:3px solid #2f8a3b}.toast-info{border-left:3px solid var(--accent)}.loadbar{position:fixed;top:0;left:0;height:3px;width:100%;z-index:70;background:linear-gradient(90deg,transparent,var(--accent),transparent);background-size:40% 100%;animation:loadbar 1s linear infinite}@keyframes loadbar{0%{background-position:-40% 0}to{background-position:140% 0}}.bar{height:12px;background:var(--border);border-radius:999px;overflow:hidden}.bar-fill{height:100%;background:var(--accent);border-radius:999px}.kanban{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}@media (max-width: 720px){.kanban{grid-template-columns:1fr}}.kanban-col{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:10px;min-height:120px;min-width:0}.kanban-head{font-weight:600;margin-bottom:8px;display:flex;gap:6px;align-items:center}.task-card{background:var(--panel);border:1px solid var(--border);border-left:3px solid var(--muted);border-radius:8px;padding:8px 10px;margin-bottom:8px;cursor:grab;overflow-wrap:anywhere}.task-card .item-actions{flex-shrink:0}.task-card.pr-high{border-left-color:var(--danger)}.task-card.pr-normal{border-left-color:var(--accent)}.task-card.pr-low{border-left-color:var(--muted)}.project-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 0 10px;margin-bottom:12px;border-bottom:1px solid var(--border);flex-wrap:wrap}.project-head strong{font-size:16px}.ws{display:grid;gap:16px;align-items:start;grid-template-columns:240px minmax(0,1fr) 340px}.ws.tools-closed{grid-template-columns:240px minmax(0,1fr)}.ws.focus{grid-template-columns:minmax(0,1fr)}.ws-tree,.ws-tools{min-width:0}.ws-tools{position:sticky;top:12px}@media (max-width: 900px){.ws,.ws.tools-closed,.ws.focus{grid-template-columns:1fr}.ws-tools{position:static}}.editor-bar{display:flex;justify-content:flex-end;gap:8px;margin-bottom:8px}.editor-bar .spacer{flex:1}.save-status{font-size:13px;color:var(--muted)}.save-status.saved{color:var(--success)}.save-status.error{color:var(--danger)}.rename-input{padding:4px 8px;font:inherit}.item-actions button{padding:2px 8px;min-width:30px}.progress{height:8px;background:var(--border);border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:var(--accent);border-radius:999px;transition:width .3s}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}.modal{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px;max-width:720px;width:100%;max-height:80vh;overflow:auto}.modal .scroll-box{max-height:60vh}
