:root{--bg: #1c1917;--bg-2: #232020;--bg-3: #2c2827;--line: #3b3533;--line-2: #4a4240;--ink: #ece5dc;--ink-2: #a89e93;--ink-3: #756c63;--clay: #d8a48f;--sage: #a3b18a;--wheat: #e3c391;--dusk: #b0a2bd;--blue: #7fb3e3;--brick: #c98d84;--sans: "Roboto", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "Roboto Mono", ui-monospace, monospace;--wordmark: "EB Garamond", Georgia, serif;--rail: 74px;--top: 46px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15.5px;-webkit-font-smoothing:antialiased;overscroll-behavior:none;overflow:hidden}html{overflow:hidden;height:100%}body.resizing{cursor:col-resize;user-select:none}button,input,select,textarea{font:inherit;color:inherit}kbd{font-family:var(--mono);font-size:11px;background:var(--bg-3);border:1px solid var(--line-2);border-bottom-width:2px;border-radius:4px;padding:1px 5px;color:var(--clay)}code{font-family:var(--mono);font-size:12px;color:var(--sage)}.app{position:fixed;inset:0;display:flex;overflow:hidden}.rail{width:var(--rail);flex:none;display:flex;flex-direction:column;padding:18px 0 22px;overflow:hidden;background:var(--bg-2);border-right:1px solid var(--line)}.rail-top{flex:none;display:flex;flex-direction:column;align-items:center;gap:7px;padding-bottom:14px;border-bottom:1px solid var(--line)}.brandmark{display:grid;place-items:center;padding:2px 0 8px;color:var(--clay);background:none;border:0;cursor:pointer}.brandmark:hover{filter:brightness(1.2)}.brandmark svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}.shelf-wrap{flex:1;min-height:0;display:flex;align-items:flex-end;overflow:hidden}.shelf{width:100%;max-height:100%;display:flex;flex-direction:column-reverse;align-items:center;gap:7px;overflow-y:auto;padding:8px 0;scrollbar-width:none}.shelf::-webkit-scrollbar{display:none}.slot{flex:none;width:46px;height:46px;border-radius:11px;background:var(--bg-3);background:transparent;border:1px solid var(--line);color:var(--ink-2);font-family:var(--mono);font-size:15px;cursor:pointer;transition:.14s}.slot:hover{border-color:var(--line-2);color:var(--ink-2)}.slot{position:relative}.slot.on{background:var(--clay);border-color:var(--clay);color:var(--on-clay);font-weight:500}.tip-wrap{display:contents}.railtip{position:fixed;z-index:200;transform:translateY(-50%);background:var(--bg-3);border:1px solid var(--line-2);color:var(--ink);font-size:13px;font-weight:500;padding:7px 12px;border-radius:7px;white-space:nowrap;pointer-events:none;box-shadow:0 6px 20px #00000059;max-width:280px;overflow:hidden;text-overflow:ellipsis}.railtip.muted{color:var(--ink-3);font-weight:400}.rail-tools{flex:none;display:flex;flex-direction:column;align-items:center;gap:7px;padding-top:14px}.tool{width:48px;height:48px;border-radius:11px;background:var(--bg-3);border:1px solid var(--line);display:grid;place-items:center;background:transparent;border:0;color:var(--ink-3);cursor:pointer;transition:.14s}.tool svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.tool:hover:not(:disabled){background:var(--line);color:var(--ink);border-color:var(--line-2)}.tool.on{color:var(--on-clay);background:var(--clay);border-color:var(--clay)}.tool:disabled{opacity:.28;cursor:default}.tool.gear{width:52px;height:52px;border-radius:50%;background:var(--bg-3);border:1px solid var(--line-2);color:var(--ink-2);margin-top:4px}.tool.gear svg{width:24px;height:24px}.tool.gear:hover{background:var(--clay);border-color:var(--clay);color:var(--on-clay)}.glyph-a text{font-family:var(--wordmark);font-size:19px;font-weight:500;fill:currentColor;stroke:none}.drop{flex:1;display:grid;place-items:center;transition:background .18s}.drop.over{background:#8080800f}.stage{flex:1;min-width:0;display:flex;flex-direction:column}.drop-in{text-align:center}.drop-in h1{font-family:var(--wordmark);font-weight:400;font-size:58px;letter-spacing:.01em;margin:0 0 10px;color:var(--ink)}.drop-in p{color:var(--ink-2);margin:0 0 30px;font-size:17px}.cta{background:var(--clay);color:var(--on-clay);border:0;border-radius:8px;padding:11px 24px;font-weight:500;font-size:15.5px;cursor:pointer;transition:.14s}.cta:hover{filter:brightness(1.07)}.rangebar{display:flex;align-items:center;gap:14px;width:100%}.rb-label{font-size:12px!important}.rb-label{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);white-space:nowrap}.rb-label em{display:block;font-style:normal;text-transform:none;letter-spacing:0;font-size:10.5px;color:var(--clay)}.rb-track{position:relative;flex:1;height:22px;max-width:380px}.rb-track:before{content:"";position:absolute;left:0;right:0;top:10px;height:3px;border-radius:2px;background:var(--line)}.rb-fill{position:absolute;top:10px;height:3px;border-radius:2px;background:var(--clay)}.rb-track input{position:absolute;inset:0;width:100%;-webkit-appearance:none;appearance:none;background:transparent;pointer-events:none;margin:0}.rb-track input::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:15px;height:15px;border-radius:50%;background:var(--clay);border:2px solid var(--bg-2);cursor:grab;box-shadow:0 1px 3px #00000080}.rb-track input::-moz-range-thumb{pointer-events:auto;width:15px;height:15px;border-radius:50%;background:var(--clay);border:2px solid var(--bg-2);cursor:grab}.rangebar.locked .rb-fill{background:var(--line-2)}.rangebar.locked .rb-track input::-webkit-slider-thumb{background:var(--ink-3);cursor:not-allowed}.rangebar.locked .rb-nums input{color:var(--ink-3)}.rb-nums{display:flex;align-items:center;gap:5px}.rb-nums input{width:46px;text-align:center;background:var(--bg-3);border:1px solid var(--line);border-radius:5px;padding:4px 2px;font-family:var(--mono);font-size:12px;outline:none}.rb-nums input:focus{border-color:var(--clay)}.rb-nums input:disabled{background:var(--bg-2);cursor:not-allowed}.rb-nums span{color:var(--ink-3)}.rb-nums em{font-style:normal;font-size:11.5px;color:var(--ink-3);margin-left:3px}.zoomer{margin-left:auto;display:flex;align-items:center;gap:2px;background:var(--bg-3);border:1px solid var(--line);border-radius:6px}.zoomer button{width:30px;height:30px;background:none;border:0;color:var(--ink-2);font-size:17px;cursor:pointer;line-height:1}.zoomer button:hover{color:var(--ink)}.zoomer span{font-family:var(--mono);font-size:12px;color:var(--ink-3);min-width:44px;text-align:center}.split{flex:1;min-height:0;display:flex}.reader{flex:1;min-width:0;position:relative;display:flex}.reader-close{position:absolute;top:20px;left:20px;z-index:20;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--bg-2);border:1px solid var(--line-2);color:var(--ink-3);cursor:pointer;transition:.14s;box-shadow:0 2px 10px #00000040}.reader-close svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.reader-close:hover{background:var(--brick);border-color:var(--brick);color:#fff}.zoomer.vert{position:absolute;right:20px;bottom:34px;z-index:20;flex-direction:column;gap:0;background:var(--bg-2);box-shadow:0 3px 16px #0000004d;border-radius:10px;overflow:hidden}.zoomer.vert button{width:40px;height:38px;font-size:19px}.zoomer.vert span{padding:5px 0;min-width:0;width:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px}.focus-exit{position:absolute;top:20px;left:20px;z-index:20;width:44px;height:44px;border-radius:11px;display:grid;place-items:center;background:var(--bg-2);border:1px solid var(--line-2);color:var(--ink-2);cursor:pointer;box-shadow:0 3px 14px #0000004d}.focus-exit svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.focus-exit:hover{color:var(--clay);border-color:var(--clay)}.chat-stub{position:absolute;top:20px;right:0;z-index:25;width:32px;height:48px;border-radius:8px 0 0 8px;display:grid;place-items:center;background:var(--bg-2);border:1px solid var(--line);color:var(--ink-3);cursor:pointer}.chat-stub svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.chat-stub:hover{color:var(--clay);border-color:var(--clay)}.collapse{margin-left:auto;flex:none;width:28px;height:28px;border-radius:6px;display:grid;place-items:center;background:transparent;border:1px solid var(--line);color:var(--ink-3);cursor:pointer}.collapse svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.collapse:hover{color:var(--ink);border-color:var(--line-2)}.modal-bg{position:fixed;inset:0;z-index:80;background:#0807068c;backdrop-filter:blur(4px);display:grid;place-items:center}.modal{width:420px;max-width:92vw;max-height:88vh;overflow-y:auto;background:var(--bg-2);border:1px solid var(--line-2);border-radius:14px;padding:22px;box-shadow:0 20px 60px #00000080}.modal.wide{width:560px;max-width:94vw}.modal{text-align:center}.modal h3{margin:0 0 10px;font-size:18px;font-weight:500}.modal-body{margin:0 0 14px;font-size:14.5px;line-height:1.7;color:var(--ink-2)}.modal textarea{width:100%;resize:vertical;text-align:left;background:var(--bg-3);border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:14px;color:var(--ink);outline:none}.modal textarea:focus{border-color:var(--clay)}.modal-actions{display:flex;justify-content:center;gap:10px;margin-top:18px}.modal-actions button{border-radius:8px;padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;border:1px solid transparent}.modal-actions .primary{background:var(--clay);color:var(--on-clay)}.modal-actions .danger{background:var(--brick);color:#fff}.modal-actions .ghost{background:transparent;border-color:var(--line);color:var(--ink-2)}.modal-actions .ghost:hover{color:var(--ink);border-color:var(--line-2)}.modal .rangebar{margin-top:6px}.pop{position:fixed;z-index:90;width:250px;max-width:calc(100vw - 90px);max-height:calc(100vh - 24px);overflow-y:auto;background:var(--bg-2);border:1px solid var(--line-2);border-radius:12px;padding:12px;box-shadow:0 12px 40px #0006}.pop-title{font-size:11.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);margin-bottom:9px}.pop-note{font-size:12.5px;color:var(--ink-3);line-height:1.6;margin:10px 0 0}.pop .rangebar{flex-wrap:wrap;gap:10px}.pop .rb-label{flex-basis:100%}.swatch-list{display:flex;flex-direction:column;gap:3px}.swatch-row{display:flex;align-items:center;gap:10px;background:transparent;border:1px solid transparent;border-radius:7px;padding:7px 9px;font-size:14px;color:var(--ink-2);cursor:pointer;text-align:left}.swatch-row:hover{background:var(--bg-3);color:var(--ink)}.swatch-row.on{border-color:var(--clay);color:var(--ink)}.swatch-row i{width:22px;height:22px;flex:none;border-radius:6px;border:1px solid var(--line-2);background-image:linear-gradient(var(--ink-color),var(--ink-color));background-color:#fff}.library{flex:1;min-height:0;overflow-y:auto;padding:clamp(24px,4vh,44px) clamp(20px,4vw,48px) 56px;display:flex;flex-direction:column;align-items:center;justify-content:safe flex-start;transition:background .18s}.library.over{background:#8080800f}.lib-head{flex:none;text-align:center;margin-bottom:clamp(28px,5vh,48px)}.lib-head h1{font-family:var(--wordmark);font-weight:400;font-size:clamp(36px,5vw,56px);margin:0 0 8px;letter-spacing:.01em}.lib-head p{color:var(--ink-2);font-size:clamp(14px,1.4vw,17px);margin:0}.lib-grid{flex:none;display:grid;gap:clamp(16px,1.8vw,24px);width:100%;max-width:1220px;margin:0 auto;grid-template-columns:repeat(auto-fill,minmax(clamp(200px,19vw,260px),1fr))}.card{position:relative;display:flex;flex-direction:column;gap:9px;min-width:0}.card-hit{display:block;width:100%;padding:0;background:transparent;border:0;cursor:pointer}.card-face{position:relative;aspect-ratio:5 / 4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px 16px 14px;background:var(--bg-2);border:1px solid var(--line);border-radius:13px;color:var(--ink-3);transition:.15s}.card:hover .card-face{border-color:var(--line-2);color:var(--ink-2)}.card.on .card-face{border-color:var(--clay);color:var(--clay)}.card-doc{width:46px;height:46px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round}.card-n{position:absolute;top:11px;left:13px;font-family:var(--mono);font-size:12px;color:var(--ink-3)}.card-tools{position:absolute;top:8px;right:8px;z-index:3;display:flex;gap:5px;opacity:0;transition:opacity .14s}.card:hover .card-tools,.card-tools:focus-within{opacity:1}.card-btn{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:var(--bg-3);border:1px solid var(--line);color:var(--ink-3);cursor:pointer;transition:.14s}.card-btn svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.card-btn:hover{background:var(--clay);border-color:var(--clay);color:var(--on-clay)}.card-btn.del:hover{background:var(--brick);border-color:var(--brick);color:#fff}.card-editing{position:absolute;inset:auto 10px 10px;z-index:4}.card-rename{width:100%;background:var(--bg-3);border:1px solid var(--clay);border-radius:7px;padding:8px 10px;font-size:13.5px;color:var(--ink);outline:none;box-shadow:0 4px 16px #0000004d}.card.add .card-face{border-style:dashed;justify-content:center;gap:10px}.card.add .card-doc{width:36px;height:36px}.card-add-label{font-size:14px;color:var(--ink-3)}.card.add:hover .card-add-label{color:var(--clay)}.card.add:hover .card-face{border-color:var(--clay);color:var(--clay)}.guide-btn{align-self:flex-start;margin-top:12px}.modal.guide{width:760px;max-width:94vw;max-height:88vh;overflow-y:auto;text-align:left}.modal.guide h3,.modal.guide .modal-body{text-align:center}.guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:8px}.guide-grid section{background:var(--bg-3);border:1px solid var(--line);border-radius:10px;padding:16px 18px}.guide-grid h4{margin:0 0 10px;font-size:15px;font-weight:600;display:flex;align-items:center;gap:8px}.guide-grid .tag{font-size:10px;text-transform:uppercase;letter-spacing:.06em;background:var(--sage);color:var(--on-sage);border-radius:20px;padding:2px 8px;font-weight:500}.guide-grid ol{margin:0;padding-left:18px}.guide-grid li{font-size:13.5px;line-height:1.75;color:var(--ink-2);margin:4px 0}.guide-grid li b{color:var(--ink);font-weight:500}.guide-grid a{color:var(--blue)}.guide-note{margin:12px 0 0;padding-top:11px;border-top:1px solid var(--line);font-size:12.5px;line-height:1.65;color:var(--ink-3)}.card-title{color:var(--clay);font-size:14.5px;font-weight:500;line-height:1.4;text-align:center;width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;min-height:2.8em}.card-stats{display:flex;align-items:baseline;justify-content:center;gap:clamp(10px,1.4vw,20px);margin-top:4px}.stat{display:flex;flex-direction:column;align-items:center;gap:3px}.stat b{font-family:var(--mono);font-size:21px;font-weight:500;color:var(--ink-2);line-height:1;transition:color .15s}.stat span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);white-space:nowrap}.card:hover .stat b{color:var(--ink)}.card.on .stat b{color:var(--clay)}.card-when{font-size:11.5px;color:var(--ink-3);padding-top:12px;border-top:1px solid var(--line);width:100%;text-align:center}.carousel{display:flex;align-items:stretch;gap:6px;margin-top:2px}.carousel>button{width:34px;flex:none;background:var(--bg-3);border:1px solid var(--line);border-radius:8px;color:var(--ink-2);font-size:18px;cursor:pointer;line-height:1}.carousel>button:hover{color:var(--ink);border-color:var(--line-2)}.carousel-face{flex:1;background:var(--bg-3);border:1px solid var(--line);border-radius:8px;padding:9px 12px;display:flex;flex-direction:column;gap:4px}.carousel-name{font-size:14.5px;font-weight:500}.carousel-mode{font-family:var(--mono);font-size:10.5px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em}.swatches{display:flex;gap:4px;margin-top:2px}.swatches i{width:16px;height:16px;border-radius:4px;border:1px solid rgba(128,128,128,.25)}.md{font-size:14.5px;line-height:1.75}.md>*:first-child{margin-top:0}.md>*:last-child{margin-bottom:0}.md p{margin:0 0 10px}.md ul,.md ol{margin:0 0 10px;padding-left:20px}.md li{margin:3px 0}.md strong{color:var(--ink);font-weight:600}.md em{font-style:italic;color:var(--ink-2)}.md h1,.md h2,.md h3,.md h4{font-size:15px;font-weight:600;margin:14px 0 6px;color:var(--ink)}.md code{font-family:var(--mono);font-size:12.5px;background:var(--bg-3);border:1px solid var(--line);border-radius:4px;padding:1px 5px;color:var(--sage)}.md pre{background:var(--bg-3);border:1px solid var(--line);border-radius:8px;padding:10px 12px;overflow-x:auto;margin:0 0 10px}.md pre code{background:none;border:0;padding:0;font-size:12.5px}.md blockquote{margin:0 0 10px;padding-left:12px;border-left:2px solid var(--line-2);color:var(--ink-2)}.md a{color:var(--blue)}.md table{border-collapse:collapse;margin:0 0 10px;font-size:13px}.md th,.md td{border:1px solid var(--line);padding:5px 9px;text-align:left}.md hr{border:0;border-top:1px solid var(--line);margin:12px 0}.grip{width:5px;flex:none;cursor:col-resize;background:var(--line);transition:background .14s}.grip:hover{background:var(--clay)}.chat-slot{flex:none;min-width:300px;max-width:720px;display:flex}.viewer{flex:1;min-width:0;overflow:auto;overflow-anchor:none;padding:22px 0 70px;scrollbar-width:auto;scrollbar-color:var(--scrollbar) var(--bg)}.viewer::-webkit-scrollbar{width:13px}.viewer::-webkit-scrollbar-track{background:var(--bg)}.viewer::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:7px;border:3px solid var(--bg)}.viewer::-webkit-scrollbar-thumb:hover{filter:brightness(1.15)}.focused .viewer{padding-top:26px}.viewer-status{position:sticky;top:0;z-index:5;text-align:center;font-size:12px;color:var(--clay);padding:6px;background:var(--bg-2);border-bottom:1px solid var(--line)}.pages{display:flex;flex-direction:column;align-items:center;gap:42px}.page{position:relative;background:#fff;box-shadow:0 2px 20px #00000080}:root[data-mode=light] .page{box-shadow:0 1px 3px #0000001f,0 6px 22px #0000001a;border-radius:2px}.page canvas{display:block;border-radius:2px}.page-num{position:absolute;bottom:-24px;left:50%;transform:translate(-50%);font-family:var(--mono);font-size:12px;font-weight:500;color:var(--ink-2);background:var(--bg-2);border:1px solid var(--line);border-radius:20px;padding:3px 12px;letter-spacing:.04em}.paper-dark .page{background:#1a1715}.paper-dark .page canvas{filter:invert(1) hue-rotate(180deg) brightness(.9) contrast(1.05)}.textLayer{position:absolute;inset:0;overflow:clip;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2;caret-color:CanvasText}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;transform-origin:0 0}.textLayer ::selection{background:#96bade6b}.textLayer br::selection{background:transparent}.hl{position:absolute;z-index:1;pointer-events:none;border-radius:2px}.hl-sel{background:#96bade57}.hl-saved{transition:filter .12s}.hl-saved:hover{filter:brightness(1.25) saturate(1.3)}.hl.c-butter{background:#e8d07a66}.hl.c-sky{background:#96bade66}.hl.c-sage{background:#9dc8a866}.hl.c-rose{background:#e2a5ba66}.hl.c-clay{background:#e2ac886b}.chat{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--bg-2)}.chat-head2{flex:none;display:flex;align-items:center;gap:10px;padding:8px 10px;border-bottom:1px solid var(--line);min-height:44px}.head-btn{display:flex;align-items:center;gap:7px;background:var(--bg-3);border:1px solid var(--line);border-radius:7px;padding:6px 11px;font-size:13.5px;color:var(--ink-2);cursor:pointer;transition:.14s}.head-btn svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.head-btn:hover{color:var(--ink);border-color:var(--line-2)}.head-btn.on{border-color:var(--blue);color:var(--blue);background:#7fb3e314}.head-btn .count{font-family:var(--mono);font-size:10.5px;background:var(--bg-2);border:1px solid var(--line);border-radius:9px;padding:1px 7px;color:var(--ink-3)}.head-now{font-size:13px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tlist{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px}.tlist-empty{color:var(--ink-3);font-size:13px;padding:16px 8px}.titem{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;text-align:left;background:var(--bg-3);border:1px solid var(--line);border-radius:10px;padding:15px;color:var(--ink-2);cursor:pointer;transition:.14s;min-height:58px}.titem:hover{border-color:var(--line-2);color:var(--ink)}.titem.on{border-color:var(--blue);background:#7fb3e314;color:var(--ink)}.titem-pg{font-family:var(--mono);font-size:10.5px;color:var(--blue)}.titem-txt{font-size:14px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.titem-n{font-family:var(--mono);font-size:10px;color:var(--ink-3);border:1px solid var(--line);border-radius:8px;padding:1px 6px}.titem-x{color:var(--ink-3);font-size:14px;padding:0 2px}.titem-x:hover{color:var(--brick)}.armed-hint{font-size:14px;color:var(--ink-3);line-height:1.7;border:1px dashed var(--line-2);border-radius:8px;padding:10px 12px}.armed-hint b{color:var(--sage);font-weight:500}.chat-empty{flex:1;display:flex;flex-direction:column;justify-content:center;padding:28px;color:var(--ink-3);line-height:1.9;font-size:14.5px}.modes{flex:none;display:flex;gap:7px;padding:12px 12px 9px}.mode{flex:1;background:var(--bg-3);border:1px solid var(--line);border-radius:7px;padding:9px 4px;font-size:13.5px;color:var(--ink-2);cursor:pointer;transition:.14s}.mode:hover{color:var(--ink)}.mode.on{background:var(--sage);border-color:var(--sage);color:var(--on-sage);font-weight:500}.quote-wrap{flex:none;margin:0 12px 10px}.quote-pg{display:block;font-family:var(--mono);font-size:10px;color:var(--blue);margin-bottom:4px}.quote-pg em{font-style:normal;color:var(--ink-3)}.msgs{flex:1;overflow-y:auto;padding:4px 12px 12px;display:flex;flex-direction:column;gap:10px}.msg{border-radius:8px;padding:9px 12px;line-height:1.75;white-space:pre-wrap}.msg.user{background:var(--bg-3);color:var(--ink-2);font-size:13px;align-self:flex-end;max-width:88%}.msg.assistant{background:transparent;padding:0 2px}.msg.pending{color:var(--ink-3);font-style:italic}.msg.err{background:#c98d841a;border:1px solid rgba(201,141,132,.3);color:var(--brick);font-size:12px;font-family:var(--mono)}.composer{flex:none;display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--line)}.composer textarea{flex:1;resize:none;background:var(--bg-3);border:1px solid var(--line);border-radius:7px;padding:9px 11px;font-size:14.5px;outline:none}.composer textarea:focus{border-color:var(--clay)}.composer button.send{flex:none;width:42px;align-self:stretch;display:grid;place-items:center;background:var(--clay);color:var(--on-clay);border:0;border-radius:8px;cursor:pointer}.composer button.send svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.composer button:disabled{opacity:.32;cursor:default}.composer-hint{flex:none;padding:0 12px 11px;font-size:11.5px;line-height:1.6;color:var(--ink-3)}.composer-hint b{color:var(--sage);font-weight:500}.composer-hint kbd{font-size:10px;padding:0 4px}.composer{padding-bottom:8px}.notes{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px}.notes-tab{color:var(--wheat)}.notes-tab.on{border-color:var(--wheat);background:#e3c3911a;color:var(--wheat)}.note-card{background:var(--bg-3);border:1px solid var(--line);border-left:3px solid var(--wheat);border-radius:0 9px 9px 0;padding:14px 15px;cursor:pointer;transition:border-color .14s}.note-card:hover{border-color:var(--line-2);border-left-color:var(--wheat)}.note-card.on{border-color:var(--wheat);background:var(--bg-2)}.note-src{font-size:12.5px;color:var(--ink-3);line-height:1.55;margin-bottom:7px}.note-body{font-size:14.5px;line-height:1.7;white-space:pre-wrap}.note-del{margin-top:8px;background:none;border:0;padding:0;font-size:11px;color:var(--ink-3);cursor:pointer}.note-del:hover{color:var(--brick)}.drawer-bg{position:fixed;inset:0;z-index:50;background:#0a080780;backdrop-filter:blur(3px);display:flex;justify-content:flex-end}.drawer{width:400px;max-width:100vw;height:100%;overflow-y:auto;background:var(--bg-2);border-left:1px solid var(--line);padding:24px;display:flex;flex-direction:column;gap:8px}.drawer>*{flex:none}.drawer h2{font-size:20px;font-weight:500;margin:0 0 10px}.drawer h3{font-size:14px;font-weight:500;margin:22px 0 4px;padding-top:16px;border-top:1px solid var(--line)}.drawer label{font-size:11.5px;color:var(--ink-3);margin-top:12px;text-transform:uppercase;letter-spacing:.06em}.drawer input,.drawer select{background:var(--bg-3);border:1px solid var(--line);border-radius:7px;padding:9px 11px;font-size:14.5px;outline:none}.drawer input:focus,.drawer select:focus{border-color:var(--clay)}.note{font-size:12.5px;color:var(--ink-3);line-height:1.65;margin:4px 0 0}.usage-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.usage-grid div{background:var(--bg-3);border:1px solid var(--line);border-radius:6px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}.usage-grid span{font-size:10.5px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em}.usage-grid b{font-family:var(--mono);font-size:14px;color:var(--clay);font-weight:500}.ghost{background:transparent;border:1px solid var(--line);border-radius:6px;padding:7px 11px;font-size:12.5px;color:var(--ink-2);cursor:pointer;transition:.14s}.ghost:hover{border-color:var(--line-2);color:var(--ink)}.sig{margin-top:24px;text-align:center;font-size:13.5px;color:var(--ink-2);padding:16px 0 4px}@media (prefers-reduced-motion: reduce){*{transition:none!important}}.app,.stage,.split,.reader,.chat,.chat-slot{min-width:0;min-height:0}.msg,.md,.quote-edit,.titem-txt,.note-body,.head-now{overflow-wrap:anywhere}.md pre,.md table{max-width:100%}@media (max-height: 760px){.tool{width:42px;height:42px}.tool svg{width:20px;height:20px}.tool.gear{width:46px;height:46px}.slot{width:40px;height:40px;font-size:13px}.rail{padding:12px 0 14px}.rail-tools,.rail-top{gap:5px}:root{--rail: 66px}}@media (max-height: 620px){.tool{width:36px;height:36px;border-radius:9px}.tool svg{width:18px;height:18px}.tool.gear{width:40px;height:40px}.slot{width:34px;height:34px;font-size:12px}.brandmark svg{width:24px;height:24px}:root{--rail: 58px}}@media (max-width: 1100px){.chat-slot{max-width:46vw}}@media (max-width: 860px){.split{flex-direction:column}.chat-slot{width:100%!important;max-width:none;height:45%}.grip{display:none}.reader{min-height:55%}.chat-stub{top:auto;bottom:12px;right:12px;border-radius:8px}}@media (min-width: 2000px){.lib-grid{max-width:1400px}}.gate{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px;text-align:center;background:var(--bg);color:var(--ink)}.gate h1{font-family:var(--wordmark);font-weight:400;font-size:clamp(34px,11vw,46px);margin:0;letter-spacing:.01em}.gate p{margin:0 0 18px;color:var(--ink-3);font-size:15px}.invert-tool{display:flex;flex-direction:column;align-items:center;gap:10px}.invert-msg{margin:0;font-size:13px;color:var(--ink-3);line-height:1.6}.invert-msg.err{color:var(--brick)}.linkish{background:none;border:0;padding:0;color:var(--clay);font-size:13px;cursor:pointer;text-decoration:underline}.invert-fly{position:fixed;z-index:200;transform:translateY(-50%);display:flex;flex-direction:column;gap:8px;width:190px;max-width:calc(100vw - 90px);padding:12px;background:var(--bg-2);border:1px solid var(--line-2);border-radius:10px;box-shadow:0 8px 28px #0006}.fly-label{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3)}.fly-btn{display:flex;align-items:center;gap:8px;background:var(--bg-3);border:1px solid var(--line);border-radius:7px;padding:8px 10px;font-size:13px;color:var(--ink-2);cursor:pointer;transition:.14s}.fly-btn svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.fly-btn:hover:not(:disabled){background:var(--clay);border-color:var(--clay);color:var(--on-clay)}.fly-btn:disabled{opacity:.4;cursor:default}.fly-msg{font-size:11.5px;color:var(--ink-3);line-height:1.5}.fly-msg.err{color:var(--brick)}.fly-note{font-size:11px;color:var(--ink-3);line-height:1.5}.gswitch{display:flex;align-items:center;gap:8px;background:var(--bg-3);border:1px solid var(--line);border-radius:20px;padding:5px 11px 5px 7px;cursor:pointer;transition:.18s}.gswitch:hover{border-color:var(--line-2)}.gswitch-track{position:relative;width:30px;height:17px;flex:none;background:var(--line-2);border-radius:10px;transition:background .22s}.gswitch-knob{position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:50%;background:var(--bg);transition:transform .22s cubic-bezier(.4,.9,.3,1.2)}.gswitch-label{font-size:12.5px;font-weight:500;color:var(--ink-3);transition:color .18s;min-width:58px;text-align:left}.gswitch.on{border-color:var(--sage);background:color-mix(in srgb,var(--sage) 12%,transparent)}.gswitch.on .gswitch-track{background:var(--sage)}.gswitch.on .gswitch-knob{transform:translate(13px)}.gswitch.on .gswitch-label{color:var(--sage)}.quote-edit-btn{float:right;background:none;border:0;padding:0;font-family:var(--sans);font-size:11px;color:var(--ink-3);cursor:pointer;text-decoration:underline}.quote-edit-btn:hover{color:var(--clay)}.quote-view{background:var(--bg-3);border:1px solid var(--line);border-left:2px solid var(--blue);border-radius:0 6px 6px 0;padding:10px 12px;font-size:13.5px;line-height:1.65;color:var(--ink-2);max-height:96px;overflow-y:auto}.quote-view.editable{cursor:text}.quote-view.editable:hover{border-color:var(--line-2);border-left-color:var(--blue);color:var(--ink)}.editor-bg{position:absolute;inset:0;z-index:60;background:color-mix(in srgb,var(--bg) 70%,transparent);backdrop-filter:blur(3px);display:grid;place-items:center;padding:18px}.editor{width:100%;max-width:520px;display:flex;flex-direction:column;gap:10px;background:var(--bg-2);border:1px solid var(--line-2);border-radius:12px;padding:18px;box-shadow:0 16px 48px #0006}.editor h3{margin:0;font-size:16px;font-weight:500}.editor h3 em{font-style:normal;font-family:var(--mono);font-size:11px;color:var(--blue);margin-left:8px}.editor-note{margin:0;font-size:12px;line-height:1.6;color:var(--ink-3)}.editor textarea{width:100%;min-height:190px;resize:vertical;background:var(--bg-3);border:1px solid var(--line);border-radius:8px;padding:12px 13px;font-size:14px;line-height:1.7;color:var(--ink);outline:none}.editor textarea:focus{border-color:var(--clay)}.editor-actions{display:flex;align-items:center;justify-content:space-between}.editor-hint{font-size:11.5px;color:var(--ink-3);font-family:var(--mono)}.editor-actions .primary{background:var(--clay);color:var(--on-clay);border:0;border-radius:8px;padding:8px 22px;font-size:14px;font-weight:500;cursor:pointer}.chat{position:relative}.fly-bar{height:4px;border-radius:3px;overflow:hidden;background:var(--line)}.fly-bar span{display:block;height:100%;border-radius:3px;background:var(--clay);transition:width .25s ease}.fly-bar.wide{width:210px;max-width:70vw;height:5px}.fly-btn.ready{background:var(--clay);border-color:var(--clay);color:var(--on-clay)}.tool.pinned{border-color:var(--clay)}.modal-list{margin:0 0 10px;padding:0;list-style:none;text-align:left;display:flex;flex-direction:column;gap:9px}.modal-list li{position:relative;padding-left:18px;font-size:14px;line-height:1.6;color:var(--ink-2)}.modal-list li:before{content:"·";position:absolute;left:5px;top:-1px;color:var(--clay);font-size:18px;line-height:1.4}.modal-list b{color:var(--ink);font-weight:500}.modal-fine{display:block;font-size:12px;color:var(--ink-3);text-align:center}.guide-faq{margin-top:16px;padding:16px 18px;background:var(--bg-3);border:1px solid var(--line);border-radius:10px}.guide-faq h4{margin:0 0 10px;font-size:15px;font-weight:600}.guide-faq p{margin:0 0 9px;font-size:13.5px;line-height:1.7;color:var(--ink-2)}.guide-faq ul{margin:0 0 4px;padding-left:18px}.guide-faq li{font-size:13.5px;line-height:1.75;color:var(--ink-2);margin:3px 0}.gate-tag{margin:0 0 20px!important}.gate-why{max-width:380px;margin:0 0 12px;font-size:13.5px;line-height:1.75;color:var(--ink-3)}.gate-why kbd{font-size:10.5px}.gate-tool{margin-top:22px;padding-top:22px;border-top:1px solid var(--line);width:100%;max-width:380px;display:flex;flex-direction:column;align-items:center;gap:12px}.gate-tool-label{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3)}
