:root{--bg:#f6f4ef;--panel:#fff;--text:#23282b;--muted:#667075;--border:#dcd8cf;--accent:#2f6f6a;--accent-text:#fff;--accent-soft:#e0eeec;--danger:#a33a3a;--focus:#2f6f6a;--shadow:0 2px 10px #1e28281a;--ui-font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}[data-theme=dark]{--bg:#16191b;--panel:#1f2326;--text:#e4e6e4;--muted:#9aa3a6;--border:#343b3f;--accent:#5fb3aa;--accent-text:#0e1415;--accent-soft:#223533;--danger:#e08585;--focus:#5fb3aa;--shadow:0 2px 12px #00000080}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--ui-font);font-size:15px;line-height:1.45}h1,h2,h3,h4,h5,h6{margin:0}a{color:var(--accent)}button,select,input{font:inherit;color:inherit}button{background:var(--panel);border:1px solid var(--border);cursor:pointer;border-radius:8px;padding:6px 12px}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}button.danger{color:var(--danger)}button.danger.primary{background:var(--danger);color:#fff;border-color:var(--danger)}button.link{color:var(--accent);background:0 0;border:0;padding:0;text-decoration:underline}button.mini{border-radius:6px;padding:1px 8px;font-size:13px}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}input[type=text],input[type=email],input[type=password],input[type=search],input:not([type]),select{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:100%;padding:7px 10px}label{margin:12px 0;font-size:14px;display:block}label input,label select{margin-top:4px}label.inline{align-items:center;gap:6px;margin:0;display:flex}label.inline select{width:auto;margin:0;padding:4px 8px}label.check{align-items:center;gap:8px;display:flex}label.check input{width:auto;margin:0}.muted{color:var(--muted)}.error{color:var(--danger)}.spacer{flex:1}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.card{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;padding:16px}.brand{color:var(--accent);letter-spacing:-.5px;font-size:28px}.brand.small{font-size:20px}.login{place-items:center;min-height:100%;padding:24px;display:grid}.login-card{width:min(400px,100%)}.login-card .primary{width:100%;margin-top:8px;padding:9px}.topbar{background:var(--panel);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 14px;display:flex}.fm{min-height:100%}.search{max-width:360px}.fm-main{max-width:1000px;margin:0 auto;padding:18px 16px 120px}.crumbs{margin-bottom:12px;font-size:15px}.crumbs a{border-radius:4px;padding:2px 4px}.crumbs a.drop,tr.drop{background:var(--accent-soft);outline:2px dashed var(--accent)}.actions{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.hint{font-size:13px}table.files{border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:12px;width:100%;overflow:hidden}table.files th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--border);padding:8px 12px;font-size:12px}table.files td{border-bottom:1px solid var(--border);vertical-align:middle;padding:8px 12px}table.files tr:last-child td{border-bottom:0}table.files tbody tr:hover{background:var(--accent-soft)}button.name{text-align:left;background:0 0;border:0;padding:2px 0;font-weight:600}button.name:hover{color:var(--accent)}.row-actions{text-align:right;white-space:nowrap}.row-actions button{opacity:.55;margin-left:4px;padding:2px 8px;font-size:13px}tr:hover .row-actions button,.row-actions button:focus-visible{opacity:1}.badge{background:var(--accent-soft);border-radius:999px;padding:2px 8px;font-size:12px}.badge.busy{animation:1.4s ease-in-out infinite pulse}.badge.bad{color:var(--danger);border:1px solid var(--danger);background:0 0}@keyframes pulse{50%{opacity:.45}}.empty{text-align:center;padding:48px 16px}.rename{align-items:center;gap:6px;display:flex}.rename input{min-width:220px}.modal-backdrop{z-index:50;background:#0006;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{width:min(460px,100%);max-height:85vh;overflow:auto}.modal h2{word-break:break-word;margin-bottom:8px;font-size:18px}.modal-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.folder-pick{max-height:300px;margin:8px 0;padding:0;list-style:none;overflow:auto}.folder-pick button{text-align:left;background:0 0;border:0;width:100%}.folder-pick button:hover:not(:disabled){background:var(--accent-soft)}.drop-overlay{z-index:60;pointer-events:none;background:#2f6f6a38;place-items:center;display:grid;position:fixed;inset:0}.drop-overlay .card{border:3px dashed var(--accent);padding:28px 40px;font-size:22px}.uploads{z-index:40;width:340px;max-height:50vh;padding:12px;position:fixed;bottom:16px;right:16px;overflow:auto}.uploads-head{justify-content:space-between;margin-bottom:6px;display:flex}.uploads ul{margin:0;padding:0;list-style:none}.uploads li{border-top:1px solid var(--border);grid-template-columns:1fr auto;gap:2px 8px;padding:5px 0;font-size:13px;display:grid}.u-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.u-state.error{color:var(--danger)}.u-state.done{color:var(--accent)}.uploads progress{grid-column:1/-1;width:100%;height:6px}.reader{flex-direction:column;height:100%;display:flex}.reader-state{justify-items:start;gap:14px;max-width:600px;margin:48px auto;padding:0 16px;display:grid}.doc-title{text-overflow:ellipsis;white-space:nowrap;max-width:22ch;font-size:15px;font-weight:600;overflow:hidden}.zoom{align-items:center;gap:6px;display:flex}.zoom>button{width:34px;height:34px;padding:0;font-size:20px;line-height:1}.steps{align-items:center;gap:3px;display:flex}.step{background:var(--border);border:0;border-radius:4px;width:14px;height:22px;padding:0}.step.on{background:var(--accent);opacity:.55}.step.current{opacity:1;outline:2px solid var(--accent);outline-offset:1px}.zoom-label{text-overflow:ellipsis;white-space:nowrap;max-width:34ch;font-size:13px;overflow:hidden}.menu{position:relative}.settings{z-index:30;width:270px;position:absolute;top:40px;right:0}.settings label{margin:8px 0}.progress{background:var(--border);height:3px}.progress>div{background:var(--accent);height:100%;transition:width .1s linear}.reader-body{flex:1;min-height:0;display:flex}.outline{border-right:1px solid var(--border);background:var(--panel);flex:none;width:250px;padding:8px 0;overflow:auto}.o-item{text-align:left;background:0 0;border:0;border-radius:0;justify-content:space-between;gap:8px;width:100%;padding:6px 10px;font-size:14px;display:flex}.o-item:hover{background:var(--accent-soft)}.o-item.here{box-shadow:inset 3px 0 0 var(--border);font-weight:600}.o-item.focus{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.o-item.hidden-sec{color:var(--muted)}.o-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lvl{text-align:center;background:var(--border);min-width:20px;color:var(--text);border-radius:10px;flex:none;padding:1px 6px;font-size:11px}.lvl.own{background:var(--accent);color:var(--accent-text)}.content{flex:1;padding:24px 20px 40vh;position:relative;overflow:auto}.page{max-width:740px;font-family:var(--reader-font,var(--ui-font));font-size:var(--reader-size,18px);line-height:var(--reader-lh,1.7);margin:0 auto}.page-title{margin-bottom:4px;font-size:1.6em;line-height:1.25}.meta{margin:0 0 18px;font-size:.8em}.sec{content-visibility:auto;contain-intrinsic-size:auto 200px;border-left:4px solid #0000;border-radius:6px;margin:0 -14px 6px;padding:10px 14px;scroll-margin-top:12px}.sec:hover{background:color-mix(in srgb, var(--accent-soft) 45%, transparent)}.sec.focused,.doc-summary.focused{border-left-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 70%, transparent)}.doc-summary{background:var(--accent-soft);border-left:4px solid #0000;border-radius:6px;margin:0 -14px 14px;padding:12px 14px}.sec-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.sec-title{margin:.2em 0;font-size:1.2em;line-height:1.3}.sec-title.untitled{color:var(--muted);font-size:.85em;font-weight:500}.sec-tools{opacity:0;font-family:var(--ui-font);flex:none;align-items:center;gap:4px;transition:opacity .15s;display:flex}.sec:hover .sec-tools,.sec.focused .sec-tools,.sec-tools:focus-within{opacity:1}.page p,.page ul,.page blockquote,.page pre{margin:.6em 0}.page ul{padding-left:1.3em}.page li{margin:.25em 0}.page blockquote{border-left:3px solid var(--border);color:var(--muted);padding-left:12px}.page pre{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:10px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.85em;overflow:auto}.table-wrap{margin:.8em 0;overflow:auto}.page table{border-collapse:collapse;font-size:.9em}.page th,.page td{border:1px solid var(--border);text-align:left;padding:4px 10px}.img-ph,.placeholders{font-size:.85em;font-family:var(--ui-font)}.img-ph{border:1px dashed var(--border);color:var(--muted);border-radius:8px;margin:.6em 0;padding:10px}.tip{font-size:.85em;font-family:var(--ui-font)}.end{text-align:center;color:var(--muted);font-size:.8em;font-family:var(--ui-font);margin-top:30px}.summary p:first-child,.summary ul:first-child{margin-top:.3em}.skeleton{gap:8px;margin:.6em 0;display:grid}.skeleton span{background:var(--border);border-radius:6px;height:.9em;animation:1.4s ease-in-out infinite pulse}.skeleton span.short{width:55%}.dim .page p,.dim .page li,.dim .page blockquote{opacity:.35;transition:opacity .12s}.dim .page p:hover,.dim .page li:hover,.dim .page blockquote:hover{opacity:1}.dim .summary p,.dim .summary li{opacity:.35}.ruler{background:color-mix(in srgb, var(--accent) 16%, transparent);border-top:1px solid color-mix(in srgb, var(--accent) 40%, transparent);border-bottom:1px solid color-mix(in srgb, var(--accent) 40%, transparent);pointer-events:none;z-index:5;height:36px;position:fixed;left:250px;right:0}.floater{z-index:70;box-shadow:var(--shadow);position:fixed}.selcard{z-index:40;width:min(420px,100vw - 32px);max-height:45vh;padding:12px 14px;font-size:15px;position:fixed;bottom:16px;right:16px;overflow:auto}.selcard.focused{outline:2px solid var(--accent)}.selcard .sec-head{flex-wrap:wrap;align-items:center;gap:6px}.sel-full{white-space:pre-wrap;margin:8px 0 0}.hud{background:var(--text);color:var(--bg);opacity:0;pointer-events:none;z-index:80;border-radius:999px;padding:8px 16px;font-size:14px;transition:opacity .15s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.hud.show{opacity:.94}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (max-width:800px){.outline{width:190px}.ruler{left:190px}.doc-title{display:none}}.chat{border-left:1px solid var(--border);background:var(--panel);flex-direction:column;flex:none;width:380px;min-height:0;display:flex}.chat-head{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 12px;display:flex}.chat-head label.inline{gap:6px;font-size:13px}.chat-head input[type=range]{width:90px;margin:0;padding:0}.chat-list{flex-direction:column;flex:1;gap:10px;padding:12px;display:flex;overflow:auto}.chat-empty{gap:8px;display:grid}.starter{text-align:left;border-radius:10px}.msg{overflow-wrap:anywhere;border-radius:12px;max-width:92%;padding:9px 12px;font-size:15px;line-height:1.5}.msg.user{background:var(--accent);color:var(--accent-text);white-space:pre-wrap;align-self:flex-end}.msg.bot{background:var(--bg);border:1px solid var(--border);align-self:flex-start;width:92%;position:relative}.msg.bot.active{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.msg-tools{opacity:.55;justify-content:flex-end;align-items:center;gap:4px;margin-bottom:4px;display:flex}.msg.bot:hover .msg-tools,.msg.bot.active .msg-tools,.msg-tools:focus-within{opacity:1}.msg .summary p,.msg .summary ul{margin:.35em 0}.msg .summary ul{padding-left:1.2em}.sources{flex-wrap:wrap;align-items:center;gap:5px;margin-top:8px;font-size:13px;display:flex}.chip{background:var(--accent-soft);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:100%;padding:1px 9px;font-size:12px;overflow:hidden}.chat-input{border-top:1px solid var(--border);align-items:flex-end;gap:8px;padding:10px 12px;display:flex}.chat-input textarea{resize:none;background:var(--bg);border:1px solid var(--border);font:inherit;color:inherit;border-radius:10px;flex:1;padding:8px 10px}.chat-error{margin:6px 0 0;padding:0 12px;font-size:14px}.reader.chat-open .selcard{right:396px}.reader.chat-open .hud{left:calc(50% - 190px)}@media (max-width:1000px){.chat{width:320px}.reader.chat-open .selcard{right:336px}}
