:root{--epfl-red: #ff0000;--epfl-red-dark: #b51f1f;--epfl-red-darker: #891818;--epfl-teal: #007480;--epfl-white: #fff;--epfl-gray-50: #f4f4f4;--epfl-gray-100: #e6e6e6;--epfl-gray-200: #c1c1c1;--epfl-gray-400: #8e8e8e;--epfl-gray-600: #707070;--epfl-gray-700: #495057;--epfl-text: #212121;--epfl-danger: #cc0000;--epfl-danger-bg: #ffcccc;--epfl-danger-border: #ffb8b8;--epfl-danger-text: #941010;--epfl-warning: #f5a623;--epfl-warning-bg: #fdedd3;--epfl-warning-border: #fce6c1;--epfl-warning-text: #8f6622;--epfl-success-bg: #e5f6d3;--epfl-success-border: #dbf3c1;--epfl-success-text: #517e21;--epfl-mark: rgba(255, 0, 0, .2);--epfl-radius: 2px;--epfl-radius-lg: 4px;--epfl-font: "Suisse Int'l", Arial, Helvetica, sans-serif;--epfl-font-mono: ui-monospace, "Consolas", monospace}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--epfl-red-dark);outline-offset:2px}.bubble.svelte-1vzi4dl{padding:.6rem .8rem;border-radius:var(--epfl-radius);max-width:100%;font-size:.88rem;line-height:1.45}.bubble.user.svelte-1vzi4dl{background:var(--epfl-white);border:1px solid var(--epfl-gray-200);border-left:3px solid var(--epfl-red);align-self:flex-end;max-width:85%}.bubble.assistant.svelte-1vzi4dl{background:var(--epfl-white);border:1px solid var(--epfl-gray-100)}.bubble.system.svelte-1vzi4dl{background:var(--epfl-warning-bg);border:1px solid var(--epfl-warning-border);font-size:.8rem;font-style:italic}.text.user.svelte-1vzi4dl{white-space:pre-wrap;word-wrap:break-word}.att-images.svelte-1vzi4dl{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.4rem}.att-image.svelte-1vzi4dl{max-width:160px;max-height:160px;border-radius:var(--epfl-radius);border:1px solid var(--epfl-gray-200);display:block}.att-docs.svelte-1vzi4dl{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.4rem}.att-doc.svelte-1vzi4dl{font-size:.72rem;color:var(--epfl-red-darker);background:var(--epfl-gray-100);border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);padding:.15rem .4rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.att-doc-tk.svelte-1vzi4dl{color:var(--epfl-red-dark)}.text.assistant.svelte-1vzi4dl p{margin:0 0 .6rem}.text.assistant.svelte-1vzi4dl p:last-child{margin-bottom:0}.text.assistant.svelte-1vzi4dl ul,.text.assistant.svelte-1vzi4dl ol{margin:.3rem 0 .6rem 1.2rem;padding:0}.text.assistant.svelte-1vzi4dl li{margin:.15rem 0}.text.assistant.svelte-1vzi4dl h1,.text.assistant.svelte-1vzi4dl h2,.text.assistant.svelte-1vzi4dl h3,.text.assistant.svelte-1vzi4dl h4{font-size:.95rem;font-weight:600;margin:.5rem 0 .3rem}.text.assistant.svelte-1vzi4dl code{background:var(--epfl-gray-50);padding:.1rem .3rem;border-radius:var(--epfl-radius);font-size:.82rem;font-family:var(--epfl-font-mono)}.text.assistant.svelte-1vzi4dl pre{background:var(--epfl-gray-50);padding:.5rem;border-radius:var(--epfl-radius);overflow-x:auto;font-size:.78rem;margin:.4rem 0}.text.assistant.svelte-1vzi4dl pre code{background:none;padding:0}.text.assistant.svelte-1vzi4dl .mermaid-block{margin:.6rem 0;border:1px solid var(--epfl-gray-100);border-radius:var(--epfl-radius);background:var(--epfl-white);overflow:hidden}.text.assistant.svelte-1vzi4dl .mermaid-figure{padding:.6rem;overflow:auto;max-height:60vh;text-align:center}.text.assistant.svelte-1vzi4dl .mermaid-figure svg{max-width:100%;height:auto;display:inline-block}.text.assistant.svelte-1vzi4dl .mermaid-figure span.edgeLabel.citation{background:transparent;padding:0;border-radius:0;font-size:inherit;color:inherit;font-weight:inherit;font-family:inherit;text-decoration:underline;text-decoration-style:dotted;text-decoration-color:var(--epfl-gray-600);text-decoration-thickness:1px;text-underline-offset:2px;cursor:pointer;transition:background .12s ease}.text.assistant.svelte-1vzi4dl .mermaid-figure span.edgeLabel.citation:hover{background:var(--epfl-gray-100)}.text.assistant.svelte-1vzi4dl .mermaid-toolbar{display:flex;gap:.4rem;padding:.3rem .5rem;border-top:1px solid var(--epfl-gray-100);background:var(--epfl-gray-50);justify-content:flex-end}.text.assistant.svelte-1vzi4dl .mermaid-toolbar button{font-size:.72rem;padding:.2rem .5rem;border:1px solid var(--epfl-gray-200);background:var(--epfl-white);border-radius:var(--epfl-radius);cursor:pointer;color:var(--epfl-gray-700);font-family:inherit}.text.assistant.svelte-1vzi4dl .mermaid-toolbar button:hover{background:var(--epfl-gray-100);color:var(--epfl-text)}.text.assistant.svelte-1vzi4dl .mermaid-error{background:var(--epfl-danger-bg);color:var(--epfl-danger-text);padding:.4rem .6rem;border:1px solid var(--epfl-danger-border);border-radius:var(--epfl-radius);margin:.4rem 0 0;font-size:.78rem;font-family:var(--epfl-font-mono);white-space:pre-wrap;word-break:break-word}.text.assistant.svelte-1vzi4dl strong{font-weight:600}.text.assistant.svelte-1vzi4dl em{font-style:italic}.text.assistant.svelte-1vzi4dl blockquote{border-left:3px solid var(--epfl-gray-100);margin:.4rem 0;padding:.2rem 0 .2rem .7rem;color:var(--epfl-gray-600)}.text.assistant.svelte-1vzi4dl .citation{display:inline;background:var(--epfl-gray-100);color:var(--epfl-red-darker);padding:0 .25rem;border-radius:var(--epfl-radius);font-size:.8rem;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none}.text.assistant.svelte-1vzi4dl .citation:hover{background:var(--epfl-gray-200);text-decoration:underline}.text.assistant.svelte-1vzi4dl a{color:var(--epfl-red-dark);text-decoration:underline}.msg-actions.svelte-1vzi4dl{display:flex;gap:.4rem;margin-top:.5rem}.msg-actions.svelte-1vzi4dl button:where(.svelte-1vzi4dl){font-size:.72rem;padding:.18rem .5rem;border:1px solid var(--epfl-gray-200);background:var(--epfl-white);border-radius:var(--epfl-radius);cursor:pointer;color:var(--epfl-gray-600);font-family:inherit}.msg-actions.svelte-1vzi4dl button:where(.svelte-1vzi4dl):hover:not(:disabled){background:var(--epfl-gray-100);color:var(--epfl-text)}.msg-actions.svelte-1vzi4dl button:where(.svelte-1vzi4dl):disabled{opacity:.5;cursor:not-allowed}.sources.svelte-1vzi4dl{margin-top:.6rem;border-top:1px solid var(--epfl-gray-100);padding-top:.4rem}.sources.svelte-1vzi4dl summary:where(.svelte-1vzi4dl){font-size:.75rem;color:var(--epfl-gray-600);cursor:pointer;-webkit-user-select:none;user-select:none}.sources.svelte-1vzi4dl ul:where(.svelte-1vzi4dl){list-style:none;padding:.4rem 0 0;margin:0;display:flex;flex-direction:column;gap:.2rem}.sources.svelte-1vzi4dl li:where(.svelte-1vzi4dl){display:flex}.source-row.svelte-1vzi4dl{display:flex;gap:.4rem;font-size:.75rem;color:var(--epfl-gray-600);background:none;border:none;padding:.2rem .3rem;border-radius:var(--epfl-radius);cursor:pointer;font-family:inherit;text-align:left;width:100%;align-items:center}.source-row.svelte-1vzi4dl:hover{background:var(--epfl-gray-100);color:var(--epfl-text)}.ref-num.svelte-1vzi4dl{color:var(--epfl-red-dark);font-weight:600;min-width:1.6rem}.ref-name.svelte-1vzi4dl{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ref-score.svelte-1vzi4dl{color:var(--epfl-gray-400)}.chat.svelte-9yrjc1{display:flex;flex-direction:column;height:100%;min-height:0}.controls.svelte-9yrjc1{display:flex;gap:.4rem;padding:.5rem 1rem;border-bottom:1px solid var(--epfl-gray-100);background:var(--epfl-white)}.controls.svelte-9yrjc1 button:where(.svelte-9yrjc1){background:none;border:1px solid var(--epfl-gray-200);padding:.35rem .7rem;border-radius:var(--epfl-radius);font-size:.75rem;color:var(--epfl-gray-600);cursor:pointer;font-family:inherit}.controls.svelte-9yrjc1 button:where(.svelte-9yrjc1):hover:not(:disabled){background:var(--epfl-gray-50)}.controls.svelte-9yrjc1 button:where(.svelte-9yrjc1):disabled{opacity:.5;cursor:not-allowed}.controls.svelte-9yrjc1 .new-conv:where(.svelte-9yrjc1){margin-left:auto;border:none;font-size:1.05rem;line-height:1;padding:.25rem .5rem}.messages.svelte-9yrjc1{flex:1;overflow-y:auto;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.6rem;min-height:0}.placeholder.svelte-9yrjc1{color:var(--epfl-gray-400);font-size:.85rem;text-align:center;padding:2rem .5rem}.thinking.svelte-9yrjc1{color:var(--epfl-gray-400);font-size:.8rem;font-style:italic;padding:.4rem 0}.reasoning.svelte-9yrjc1{background:var(--epfl-gray-50);border:1px solid var(--epfl-gray-100);border-radius:var(--epfl-radius);padding:.4rem .6rem;font-size:.78rem;color:var(--epfl-gray-600)}.reasoning.svelte-9yrjc1 summary:where(.svelte-9yrjc1){cursor:pointer;color:var(--epfl-gray-400);font-style:italic;-webkit-user-select:none;user-select:none}.reasoning.svelte-9yrjc1 pre:where(.svelte-9yrjc1){margin:.4rem 0 0;white-space:pre-wrap;word-wrap:break-word;font-family:inherit;color:var(--epfl-gray-600);max-height:220px;overflow-y:auto}.error.svelte-9yrjc1{background:var(--epfl-danger-bg);border:1px solid var(--epfl-danger-border);color:var(--epfl-danger-text);padding:.5rem .7rem;border-radius:var(--epfl-radius);font-size:.8rem}.size-estimate.svelte-9yrjc1{font-size:.72rem;font-variant-numeric:tabular-nums;color:var(--epfl-gray-600);background:var(--epfl-white);border:1px solid var(--epfl-gray-100);padding:.1rem .35rem;border-radius:var(--epfl-radius);white-space:nowrap}.size-estimate.warn-soft.svelte-9yrjc1{color:var(--epfl-warning-text);border-color:var(--epfl-warning);background:var(--epfl-warning-bg)}.size-estimate.warn-hard.svelte-9yrjc1{color:var(--epfl-danger-text);border-color:var(--epfl-danger-border);background:var(--epfl-danger-bg)}.attachments.svelte-9yrjc1{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.4rem 1rem 0;background:var(--epfl-white)}.att-thumb.svelte-9yrjc1{position:relative;display:inline-flex}.att-thumb.svelte-9yrjc1 img:where(.svelte-9yrjc1){width:44px;height:44px;object-fit:cover;border-radius:var(--epfl-radius);border:1px solid var(--epfl-gray-200);display:block}.att-chip.svelte-9yrjc1{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;color:var(--epfl-gray-600);background:var(--epfl-gray-50);border:1px solid var(--epfl-gray-100);border-radius:var(--epfl-radius);padding:.2rem .4rem;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.att-tokens.svelte-9yrjc1{color:var(--epfl-gray-400)}.att-remove.svelte-9yrjc1{border:none;background:#212121a6;color:var(--epfl-white);border-radius:50%;width:15px;height:15px;font-size:.7rem;line-height:1;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center}.att-thumb.svelte-9yrjc1 .att-remove:where(.svelte-9yrjc1){position:absolute;top:-5px;right:-5px}.att-chip.svelte-9yrjc1 .att-remove:where(.svelte-9yrjc1){background:var(--epfl-gray-200);color:var(--epfl-gray-700)}.att-status.svelte-9yrjc1{font-size:.72rem;color:var(--epfl-gray-600);font-style:italic}.att-budget.svelte-9yrjc1{font-size:.7rem;font-variant-numeric:tabular-nums;color:var(--epfl-gray-600);margin-left:auto}.att-budget.warn-hard.svelte-9yrjc1{color:var(--epfl-danger-text);font-weight:600}.att-error.svelte-9yrjc1{flex-basis:100%;font-size:.72rem;color:var(--epfl-danger-text);background:var(--epfl-danger-bg);border:1px solid var(--epfl-danger-border);border-radius:var(--epfl-radius);padding:.3rem .5rem}.composer.svelte-9yrjc1{display:flex;flex-direction:column;gap:.3rem;margin:.5rem 1rem .75rem;padding:.5rem .6rem .45rem;border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius-lg);background:var(--epfl-white);transition:border-color .12s ease,box-shadow .12s ease}.composer.svelte-9yrjc1:focus-within{border-color:var(--epfl-red-dark);box-shadow:0 0 0 3px #b51f1f1f}.composer.drag-over.svelte-9yrjc1{background:var(--epfl-gray-50);border-color:var(--epfl-gray-400);border-style:dashed}.file-input.svelte-9yrjc1{display:none}textarea.svelte-9yrjc1{resize:none;width:100%;box-sizing:border-box;padding:.3rem .4rem;border:none;background:transparent;font-family:inherit;font-size:.9rem;line-height:1.4;max-height:160px}textarea.svelte-9yrjc1:focus{outline:none}textarea.svelte-9yrjc1:disabled{color:var(--epfl-gray-400)}.toolbar.svelte-9yrjc1{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.tools.svelte-9yrjc1{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap}.tool-btn.svelte-9yrjc1{display:inline-flex;align-items:center;gap:.3rem;padding:.28rem .5rem;background:none;border:1px solid var(--epfl-gray-100);border-radius:999px;color:var(--epfl-gray-600);cursor:pointer;font-family:inherit;font-size:.74rem;line-height:1;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.tool-btn.svelte-9yrjc1 svg:where(.svelte-9yrjc1){width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.tool-btn.svelte-9yrjc1:hover:not(:disabled){background:var(--epfl-gray-50);color:var(--epfl-text)}.tool-btn.on.svelte-9yrjc1{background:var(--epfl-gray-100);border-color:var(--epfl-red-dark);color:var(--epfl-red-dark)}.tool-btn.on.warn.svelte-9yrjc1{background:var(--epfl-warning-bg);border-color:var(--epfl-warning);color:var(--epfl-warning-text)}.tool-btn.svelte-9yrjc1:disabled{opacity:.45;cursor:not-allowed}.tool-label.svelte-9yrjc1{font-weight:500}.send.svelte-9yrjc1{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;flex-shrink:0;padding:0;background:var(--epfl-red-dark);color:var(--epfl-white);border:none;border-radius:50%;cursor:pointer}.send.svelte-9yrjc1 svg:where(.svelte-9yrjc1){width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.send.svelte-9yrjc1:hover:not(:disabled){background:var(--epfl-red-darker)}.send.svelte-9yrjc1:disabled{opacity:.45;cursor:not-allowed}.send.stop.svelte-9yrjc1{background:var(--epfl-danger)}.send.stop.svelte-9yrjc1:hover{background:var(--epfl-danger-text)}.tooltip-wrap.svelte-9yrjc1{position:relative;display:inline-flex}.tooltip-wrap.svelte-9yrjc1 .tooltip:where(.svelte-9yrjc1){position:absolute;top:calc(100% + 6px);left:0;z-index:50;background:var(--epfl-text);color:var(--epfl-white);padding:.45rem .6rem;border-radius:var(--epfl-radius);font-size:.72rem;line-height:1.35;width:240px;box-shadow:0 4px 12px #0000002e;opacity:0;transform:translateY(-2px);pointer-events:none;transition:opacity .12s ease,transform .12s ease}.tooltip-wrap.svelte-9yrjc1 .tooltip:where(.svelte-9yrjc1) strong{color:var(--epfl-gray-400);font-weight:600}.tooltip-wrap.svelte-9yrjc1 .tooltip:where(.svelte-9yrjc1):after{content:"";position:absolute;bottom:100%;left:1rem;border:5px solid transparent;border-bottom-color:var(--epfl-text)}.tooltip-wrap.svelte-9yrjc1:hover .tooltip:where(.svelte-9yrjc1),.tooltip-wrap.svelte-9yrjc1:focus-within .tooltip:where(.svelte-9yrjc1){opacity:1;transform:translateY(0)}.backdrop.svelte-qvn7yt{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100;padding:.75rem;animation:svelte-qvn7yt-fade .12s ease-out}.modal.svelte-qvn7yt{background:var(--epfl-white);border-radius:var(--epfl-radius-lg);box-shadow:0 10px 25px #00000040;max-width:100%;max-height:90vh;width:100%;display:flex;flex-direction:column;overflow:hidden;animation:svelte-qvn7yt-slide .15s ease-out}.head.svelte-qvn7yt{display:flex;align-items:center;justify-content:space-between;padding:.7rem .9rem;border-bottom:1px solid var(--epfl-gray-100);background:var(--epfl-gray-50)}h2.svelte-qvn7yt{margin:0;font-size:.85rem;font-weight:600;color:var(--epfl-text)}.close.svelte-qvn7yt{background:none;border:none;font-size:1.4rem;line-height:1;color:var(--epfl-gray-400);cursor:pointer;padding:0 .3rem}.close.svelte-qvn7yt:hover{color:var(--epfl-text)}.head-btn.svelte-qvn7yt{background:none;border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);padding:.15rem .45rem;margin-right:.2rem;font-size:.95rem;line-height:1;color:var(--epfl-gray-600);cursor:pointer;font-family:inherit}.head-btn.svelte-qvn7yt:hover{background:var(--epfl-gray-100);color:var(--epfl-text)}.search-bar.svelte-qvn7yt{display:flex;align-items:center;gap:.35rem;padding:.45rem .9rem;background:var(--epfl-gray-50);border-bottom:1px solid var(--epfl-gray-100)}.search-bar.svelte-qvn7yt input:where(.svelte-qvn7yt){flex:1;padding:.3rem .5rem;border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);font-size:.8rem;font-family:inherit;outline:none}.search-bar.svelte-qvn7yt input:where(.svelte-qvn7yt):focus{border-color:var(--epfl-red-dark);box-shadow:0 0 0 1px var(--epfl-red-dark)}.search-bar.svelte-qvn7yt .counter:where(.svelte-qvn7yt){font-size:.72rem;color:var(--epfl-gray-600);min-width:2.5rem;text-align:center;font-variant-numeric:tabular-nums}.search-bar.svelte-qvn7yt .counter.none:where(.svelte-qvn7yt){color:var(--epfl-danger-text)}.search-bar.svelte-qvn7yt .nav:where(.svelte-qvn7yt){background:var(--epfl-white);border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);padding:.15rem .45rem;font-size:.8rem;line-height:1;color:var(--epfl-gray-600);cursor:pointer;font-family:inherit;min-width:1.6rem}.search-bar.svelte-qvn7yt .nav:where(.svelte-qvn7yt):hover:not(:disabled){background:var(--epfl-gray-100);color:var(--epfl-text)}.search-bar.svelte-qvn7yt .nav:where(.svelte-qvn7yt):disabled{opacity:.4;cursor:not-allowed}.quote-banner.svelte-qvn7yt{padding:.5rem .9rem;background:var(--epfl-warning-bg);border-bottom:1px solid var(--epfl-warning-border);font-size:.8rem;color:var(--epfl-warning-text);line-height:1.4}.quote-banner.missing.svelte-qvn7yt{background:var(--epfl-danger-bg);border-bottom-color:var(--epfl-danger-border);color:var(--epfl-danger-text)}.quote-banner.warning.svelte-qvn7yt{background:var(--epfl-warning-border);border-bottom-color:var(--epfl-warning-border);color:var(--epfl-warning-text)}.quote-banner.svelte-qvn7yt .label:where(.svelte-qvn7yt){font-weight:600;margin-right:.3rem}.quote-banner.svelte-qvn7yt .quote:where(.svelte-qvn7yt){font-style:italic}.quote-banner.svelte-qvn7yt .note:where(.svelte-qvn7yt){display:block;margin-top:.2rem;font-size:.72rem;font-style:normal;font-weight:500}.body.svelte-qvn7yt{padding:.75rem .9rem;overflow-y:auto;display:flex;flex-direction:column;gap:.9rem}.primary-chunks.svelte-qvn7yt{display:flex;flex-direction:column;gap:.9rem}.chunk.svelte-qvn7yt{display:flex;flex-direction:column;gap:.5rem}.chunk.alt.svelte-qvn7yt{border-left:3px dashed var(--epfl-warning);padding-left:.6rem}.alt-divider.svelte-qvn7yt{margin-top:.4rem;padding:.4rem .5rem;background:var(--epfl-warning-bg);border:1px solid var(--epfl-warning-border);border-radius:var(--epfl-radius);font-size:.78rem;font-weight:500;color:var(--epfl-warning-text);display:flex;align-items:center;gap:.4rem}.alt-icon.svelte-qvn7yt{font-size:.95rem;line-height:1}.alt-badge.svelte-qvn7yt{background:var(--epfl-warning-border);color:var(--epfl-warning-text);padding:.1rem .4rem;border-radius:var(--epfl-radius-lg);font-size:.68rem;font-weight:500;text-transform:uppercase;letter-spacing:.02em}.alt-match-chip.svelte-qvn7yt{background:var(--epfl-gray-50);color:var(--epfl-gray-600);padding:.1rem .4rem;border-radius:var(--epfl-radius-lg);font-size:.7rem;font-weight:500}.meta.svelte-qvn7yt{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.75rem;color:var(--epfl-gray-600);padding-bottom:.4rem;border-bottom:1px dashed var(--epfl-gray-100)}.doc-name.svelte-qvn7yt{font-weight:600;color:var(--epfl-text)}.dot.svelte-qvn7yt{color:var(--epfl-gray-200)}.section.svelte-qvn7yt{color:var(--epfl-red-dark);font-style:italic}.score-chip.svelte-qvn7yt{margin-left:auto;background:var(--epfl-gray-50);color:var(--epfl-red-darker);padding:.1rem .4rem;border-radius:var(--epfl-radius-lg);font-size:.7rem;font-weight:500}.source-badge.svelte-qvn7yt{background:var(--epfl-success-bg);color:var(--epfl-success-text);padding:.1rem .4rem;border-radius:var(--epfl-radius-lg);font-size:.7rem;font-weight:500;white-space:nowrap}.modal-footer.svelte-qvn7yt{flex-shrink:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;padding:.6rem .9rem .75rem;border-top:1px solid var(--epfl-gray-100);background:var(--epfl-gray-50)}.source-open-btn.svelte-qvn7yt{color:var(--epfl-red-dark);font-size:.8rem;font-weight:500;text-decoration:none;padding:.4rem .7rem;border:1px solid var(--epfl-red-dark);border-radius:var(--epfl-radius);white-space:nowrap;transition:background-color .12s ease,color .12s ease}.source-open-btn.svelte-qvn7yt:hover{background:var(--epfl-red-dark);color:var(--epfl-white)}.markdown.svelte-qvn7yt{font-size:.85rem;line-height:1.5;color:var(--epfl-text);word-wrap:break-word}.markdown.svelte-qvn7yt p{margin:0 0 .5rem}.markdown.svelte-qvn7yt p:last-child{margin-bottom:0}.markdown.svelte-qvn7yt ul,.markdown.svelte-qvn7yt ol{margin:.3rem 0 .5rem 1.2rem;padding:0}.markdown.svelte-qvn7yt li{margin:.15rem 0}.markdown.svelte-qvn7yt h1,.markdown.svelte-qvn7yt h2,.markdown.svelte-qvn7yt h3,.markdown.svelte-qvn7yt h4,.markdown.svelte-qvn7yt h5{font-size:.95rem;font-weight:600;margin:.6rem 0 .3rem;color:var(--epfl-text)}.markdown.svelte-qvn7yt strong{font-weight:600}.markdown.svelte-qvn7yt em{font-style:italic}.markdown.svelte-qvn7yt code{background:var(--epfl-gray-50);padding:.1rem .3rem;border-radius:var(--epfl-radius);font-size:.8rem;font-family:var(--epfl-font-mono)}.markdown.svelte-qvn7yt pre{background:var(--epfl-gray-50);padding:.5rem;border-radius:var(--epfl-radius);overflow-x:auto;font-size:.78rem}.markdown.svelte-qvn7yt table{border-collapse:collapse;font-size:.78rem;margin:.3rem 0}.markdown.svelte-qvn7yt th,.markdown.svelte-qvn7yt td{border:1px solid var(--epfl-gray-100);padding:.25rem .4rem;text-align:left}.markdown.svelte-qvn7yt th{background:var(--epfl-gray-50);font-weight:600}.markdown.svelte-qvn7yt blockquote{border-left:3px solid var(--epfl-gray-100);margin:.4rem 0;padding:.2rem 0 .2rem .7rem;color:var(--epfl-gray-600)}.markdown.svelte-qvn7yt mark.highlight{background:var(--epfl-warning-border);padding:.05rem .15rem;border-radius:var(--epfl-radius);animation:svelte-qvn7yt-pulse 1.2s ease-out}.markdown.svelte-qvn7yt .search-hit{background:var(--epfl-mark);border-radius:var(--epfl-radius)}.markdown.svelte-qvn7yt .search-hit.active{background:var(--epfl-red-dark);color:var(--epfl-white);outline:2px solid var(--epfl-red-dark);outline-offset:1px}@keyframes svelte-qvn7yt-pulse{0%{background:var(--epfl-warning)}to{background:var(--epfl-warning-border)}}@keyframes svelte-qvn7yt-fade{0%{opacity:0}to{opacity:1}}@keyframes svelte-qvn7yt-slide{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.backdrop.svelte-1ysxk1y{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:110;padding:1rem;animation:svelte-1ysxk1y-fade .12s ease-out}.modal.svelte-1ysxk1y{background:var(--epfl-white);border-radius:var(--epfl-radius-lg);box-shadow:0 10px 25px #00000040;max-width:420px;width:100%;padding:1.1rem 1.2rem 1rem;animation:svelte-1ysxk1y-slide .15s ease-out}h2.svelte-1ysxk1y{margin:0 0 .6rem;font-size:.95rem;font-weight:600;color:var(--epfl-warning-text)}p.svelte-1ysxk1y{margin:0 0 .6rem;font-size:.85rem;line-height:1.45;color:var(--epfl-gray-700)}p.svelte-1ysxk1y strong:where(.svelte-1ysxk1y){color:var(--epfl-text)}.actions.svelte-1ysxk1y{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.9rem}button.svelte-1ysxk1y{padding:.45rem .9rem;border-radius:var(--epfl-radius);font-size:.82rem;font-family:inherit;cursor:pointer;border:1px solid transparent}.primary.svelte-1ysxk1y{background:var(--epfl-red-dark);color:var(--epfl-white)}.primary.svelte-1ysxk1y:hover{background:var(--epfl-red-darker)}.secondary.svelte-1ysxk1y{background:var(--epfl-white);color:var(--epfl-gray-600);border-color:var(--epfl-gray-200)}.secondary.svelte-1ysxk1y:hover{background:var(--epfl-gray-50);color:var(--epfl-text)}@keyframes svelte-1ysxk1y-fade{0%{opacity:0}to{opacity:1}}@keyframes svelte-1ysxk1y-slide{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.about.svelte-1vbtyn4{padding:1rem;display:flex;flex-direction:column;gap:1rem;line-height:1.45;font-size:.85rem;color:var(--epfl-text)}h2.svelte-1vbtyn4{margin:0;font-size:1rem;font-weight:600}h3.svelte-1vbtyn4{margin:0 0 .4rem;font-size:.9rem;font-weight:600;color:var(--epfl-text)}section.svelte-1vbtyn4{border:1px solid var(--epfl-gray-100);border-radius:var(--epfl-radius);padding:.7rem .85rem;background:var(--epfl-white)}section.svelte-1vbtyn4 p:where(.svelte-1vbtyn4){margin:0 0 .5rem}section.svelte-1vbtyn4 p:where(.svelte-1vbtyn4):last-child{margin-bottom:0}ul.svelte-1vbtyn4{margin:.3rem 0 .6rem;padding-left:1.2rem}li.svelte-1vbtyn4{margin:.15rem 0}code.svelte-1vbtyn4{font-family:var(--epfl-font-mono);font-size:.78rem;background:var(--epfl-gray-50);padding:.05rem .3rem;border-radius:var(--epfl-radius);word-break:break-all}.endpoint.svelte-1vbtyn4{color:var(--epfl-gray-600);font-size:.8rem}.muted.svelte-1vbtyn4{color:var(--epfl-gray-400);margin:0}.storage-status.svelte-1vbtyn4{margin:.5rem 0 0;padding:.45rem .6rem;border-radius:var(--epfl-radius);font-size:.8rem}.storage-status.ok.svelte-1vbtyn4{background:var(--epfl-success-bg);color:var(--epfl-success-text);border:1px solid var(--epfl-success-border)}.storage-status.warn.svelte-1vbtyn4{background:var(--epfl-warning-bg);color:var(--epfl-warning-text);border:1px solid var(--epfl-warning-border)}button.svelte-1vbtyn4{font:inherit;padding:.35rem .7rem;border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);background:var(--epfl-white);color:var(--epfl-text);cursor:pointer}button.svelte-1vbtyn4:disabled{opacity:.6;cursor:default}button.danger.svelte-1vbtyn4{border-color:var(--epfl-danger);background:var(--epfl-danger);color:var(--epfl-white)}.wipe-confirm.svelte-1vbtyn4{border:1px solid var(--epfl-danger-border);background:var(--epfl-danger-bg);border-radius:var(--epfl-radius);padding:.6rem .7rem}.wipe-confirm.svelte-1vbtyn4 p:where(.svelte-1vbtyn4){margin:0 0 .5rem}.wipe-actions.svelte-1vbtyn4{display:flex;gap:.5rem}.transfer-actions.svelte-1vbtyn4{display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0 .4rem}.hidden-file.svelte-1vbtyn4{display:none}.transfer-hint.svelte-1vbtyn4{font-size:.78rem}.transfer-msg.svelte-1vbtyn4{margin:.5rem 0 0;padding:.5rem .65rem;border-radius:var(--epfl-radius);font-size:.8rem}.transfer-msg.ok.svelte-1vbtyn4{background:var(--epfl-success-bg);color:var(--epfl-success-text);border:1px solid var(--epfl-success-border)}.transfer-msg.ok.svelte-1vbtyn4 p:where(.svelte-1vbtyn4){margin:0 0 .4rem}.transfer-msg.ok.svelte-1vbtyn4 button:where(.svelte-1vbtyn4){border-color:var(--epfl-success-text);color:var(--epfl-success-text)}.transfer-msg.error.svelte-1vbtyn4{background:var(--epfl-danger-bg);color:var(--epfl-danger-text);border:1px solid var(--epfl-danger-border)}form.svelte-3avcph{display:flex;flex-direction:column;gap:.75rem;padding:.75rem 1rem 1rem}h2.svelte-3avcph{margin:0;font-size:1rem;font-weight:600}label.svelte-3avcph{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--epfl-gray-600)}input.svelte-3avcph,textarea.svelte-3avcph{padding:.5rem;border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);font-size:.85rem;font-family:inherit}textarea.svelte-3avcph{resize:vertical;min-height:4.5rem;line-height:1.4}.muted.svelte-3avcph{color:var(--epfl-gray-400);font-size:.8rem;margin:0}.hint.svelte-3avcph{font-size:.7rem;color:var(--epfl-gray-400)}.warn-hint.svelte-3avcph{color:var(--epfl-warning-text)}input[type=number].svelte-3avcph{max-width:6rem}.combobox.svelte-3avcph{position:relative;display:flex;align-items:stretch}.combobox.svelte-3avcph input:where(.svelte-3avcph){flex:1;padding-right:2rem}.chevron.svelte-3avcph{position:absolute;right:0;top:0;bottom:0;width:2rem;background:none;border:none;color:var(--epfl-gray-400);cursor:pointer;font-size:.8rem}.chevron.svelte-3avcph:hover{color:var(--epfl-text)}.options.svelte-3avcph{position:absolute;top:100%;left:0;right:0;margin-top:.2rem;background:var(--epfl-white);border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);box-shadow:0 4px 12px #00000014;list-style:none;padding:.2rem 0;max-height:12rem;overflow-y:auto;z-index:20}.options.svelte-3avcph li:where(.svelte-3avcph){margin:0}.option.svelte-3avcph{display:block;width:100%;text-align:left;background:none;border:none;padding:.4rem .6rem;font-family:inherit;font-size:.8rem;color:var(--epfl-text);cursor:pointer;word-break:break-all}.option.svelte-3avcph:hover{background:var(--epfl-gray-100)}.option.selected.svelte-3avcph{background:var(--epfl-gray-50);color:var(--epfl-red-darker);font-weight:500}.option-label.svelte-3avcph{display:block;font-weight:500}.option-sub.svelte-3avcph{display:block;font-size:.7rem;color:var(--epfl-gray-400);margin-top:.1rem}.option.selected.svelte-3avcph .option-sub:where(.svelte-3avcph){color:var(--epfl-red-dark)}.rerank-group.svelte-3avcph{display:flex;flex-direction:column;gap:.4rem;border:1px solid var(--epfl-gray-100);border-radius:var(--epfl-radius);padding:.55rem .75rem .7rem;margin:0}.rerank-group.svelte-3avcph legend:where(.svelte-3avcph){font-size:.75rem;font-weight:500;color:var(--epfl-gray-600);padding:0 .3rem}.slider-label.svelte-3avcph{font-size:.8rem;color:var(--epfl-text)}.auth-group.svelte-3avcph{display:flex;flex-direction:column;gap:.4rem;border:1px solid var(--epfl-gray-100);border-radius:var(--epfl-radius);padding:.55rem .75rem .7rem;margin:0}.auth-group.svelte-3avcph legend:where(.svelte-3avcph){font-size:.75rem;font-weight:500;color:var(--epfl-gray-600);padding:0 .3rem}.auth-status.svelte-3avcph{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.auth-ok.svelte-3avcph{font-size:.85rem;color:var(--epfl-success-text)}.auth-btn.svelte-3avcph{margin-top:0;padding:.4rem .8rem;font-size:.8rem;border-radius:var(--epfl-radius);border:none;cursor:pointer}.auth-btn.primary.svelte-3avcph{background:var(--epfl-red-dark);color:var(--epfl-white);font-weight:700;align-self:flex-start}.auth-btn.primary.svelte-3avcph:hover:not(:disabled){background:var(--epfl-red-darker)}.auth-btn.primary.svelte-3avcph:active:not(:disabled){background:var(--epfl-red-darker)}.auth-btn.secondary.svelte-3avcph{background:var(--epfl-gray-50);color:var(--epfl-text)}.auth-btn.svelte-3avcph:disabled{opacity:.6;cursor:not-allowed}.auth-error.svelte-3avcph{margin:0;font-size:.75rem;color:var(--epfl-danger-text)}.optional.svelte-3avcph{color:var(--epfl-gray-400);font-weight:400;font-size:.75rem}.header-row.svelte-3avcph{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:1rem 1rem 0}.header-actions.svelte-3avcph{display:flex;align-items:center;gap:.5rem}.tab-btn.svelte-3avcph{background:none;border:1px solid var(--epfl-gray-200);padding:.3rem .6rem;border-radius:var(--epfl-radius);font-size:.75rem;cursor:pointer;font-family:inherit;color:var(--epfl-gray-600)}.tab-btn.svelte-3avcph:hover{background:var(--epfl-gray-100);color:var(--epfl-text)}.save-indicator.svelte-3avcph{font-size:.72rem;color:var(--epfl-gray-400);transition:color .2s}.save-indicator.save-saving.svelte-3avcph{color:var(--epfl-gray-400)}.save-indicator.save-saved.svelte-3avcph{color:var(--epfl-success-text)}.save-indicator.save-error.svelte-3avcph{color:var(--epfl-danger-text)}.profile-row.svelte-3avcph{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.2rem}.profile-option.svelte-3avcph{flex-direction:row!important;align-items:center;gap:.35rem;color:var(--epfl-text);font-size:.82rem;cursor:pointer}.profile-option.svelte-3avcph input[type=radio]:where(.svelte-3avcph){width:auto;margin:0;padding:0}.model-detail.svelte-3avcph{color:var(--epfl-gray-400);font-size:.75rem;font-weight:400}.feedback-note.svelte-3avcph{margin:0;padding:.55rem .7rem;background:var(--epfl-gray-50);border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);font-size:.8rem;color:var(--epfl-red-darker);line-height:1.35}.feedback-note.svelte-3avcph a:where(.svelte-3avcph){color:var(--epfl-red-dark);text-decoration:underline}.test-row.svelte-3avcph{display:flex;align-items:flex-start;gap:.4rem;margin-top:.3rem}.test-row.svelte-3avcph textarea:where(.svelte-3avcph){flex:1;min-height:2.6rem;resize:vertical}.test-index.svelte-3avcph{font-size:.75rem;color:var(--epfl-gray-400);margin-top:.55rem;min-width:1.4rem}.test-actions.svelte-3avcph{display:flex;flex-direction:column;gap:.2rem}.test-btn.svelte-3avcph{background:var(--epfl-gray-50);border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);padding:.15rem .35rem;font-size:.7rem;line-height:1;color:var(--epfl-gray-600);cursor:pointer;font-family:inherit}.test-btn.svelte-3avcph:hover:not(:disabled){background:var(--epfl-gray-100);color:var(--epfl-text)}.test-btn.svelte-3avcph:disabled{opacity:.3;cursor:not-allowed}.test-btn.test-remove.svelte-3avcph{color:var(--epfl-danger-text)}.test-btn.test-remove.svelte-3avcph:hover:not(:disabled){background:var(--epfl-danger-bg);color:var(--epfl-danger-text)}.test-add.svelte-3avcph{align-self:flex-start;margin-top:.4rem;background:none;border:1px dashed var(--epfl-gray-200);border-radius:var(--epfl-radius);padding:.35rem .6rem;font-size:.78rem;color:var(--epfl-gray-600);cursor:pointer;font-family:inherit}.test-add.svelte-3avcph:hover{background:var(--epfl-gray-50);color:var(--epfl-text)}.history.svelte-eevyod{padding:.75rem 1rem;display:flex;flex-direction:column;gap:.5rem}.bulk.svelte-eevyod{display:flex;gap:.4rem}.bulk-btn.svelte-eevyod{padding:.3rem .6rem;background:var(--epfl-gray-50);color:var(--epfl-gray-600);border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);font-size:.75rem;font-family:inherit;cursor:pointer}.bulk-btn.svelte-eevyod:hover:not(:disabled){background:var(--epfl-gray-100)}.bulk-btn.svelte-eevyod:disabled{opacity:.5;cursor:not-allowed}.bulk-btn.danger.svelte-eevyod:not(:disabled){color:var(--epfl-danger-text);border-color:var(--epfl-danger-border)}.bulk-btn.danger.svelte-eevyod:hover:not(:disabled){background:var(--epfl-danger-bg)}ul.svelte-eevyod{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.25rem}li.svelte-eevyod{display:flex;align-items:stretch;background:var(--epfl-white);border:1px solid var(--epfl-gray-100);border-radius:var(--epfl-radius)}li.current.svelte-eevyod{border-color:var(--epfl-red-dark);background:var(--epfl-gray-50)}.select.svelte-eevyod{margin:0 .4rem 0 .6rem;align-self:center;cursor:pointer}.open.svelte-eevyod{flex:1;text-align:left;background:none;border:none;padding:.55rem .7rem;cursor:pointer;font-family:inherit}.title.svelte-eevyod{font-size:.85rem;color:var(--epfl-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meta.svelte-eevyod{font-size:.7rem;color:var(--epfl-gray-400);margin-top:.15rem}.rename.svelte-eevyod,.delete.svelte-eevyod{background:none;border:none;color:var(--epfl-gray-400);cursor:pointer;padding:0 .55rem}.rename.svelte-eevyod{font-size:.85rem}.delete.svelte-eevyod{font-size:1rem}.rename.svelte-eevyod:hover{color:var(--epfl-red-dark)}.delete.svelte-eevyod:hover{color:var(--epfl-danger)}.open.editing.svelte-eevyod{flex:1;padding:.45rem .7rem;display:flex;flex-direction:column;gap:.15rem}.rename-input.svelte-eevyod{font-family:inherit;font-size:.85rem;color:var(--epfl-text);padding:.25rem .4rem;border:1px solid var(--epfl-red-dark);border-radius:var(--epfl-radius);outline:none;width:100%;box-sizing:border-box;background:var(--epfl-white)}.rename-input.svelte-eevyod:focus{box-shadow:0 0 0 2px #b51f1f33}.empty.svelte-eevyod{font-size:.85rem;color:var(--epfl-gray-400);text-align:center;padding:1.5rem .5rem}.library.svelte-128wu3v{padding:.75rem 1rem;display:flex;flex-direction:column;gap:.75rem;flex:1;min-height:100%;position:relative;border:2px dashed transparent;transition:border-color .12s ease,background .12s ease}.library.dragging.svelte-128wu3v{border-color:var(--epfl-red-dark);background:var(--epfl-gray-100)}.drop-overlay.svelte-128wu3v{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#f4f4f4d9;pointer-events:none;z-index:10}.drop-message.svelte-128wu3v{padding:1rem 1.5rem;background:var(--epfl-red);color:var(--epfl-white);border-radius:var(--epfl-radius-lg);font-size:1rem;font-weight:600;box-shadow:0 4px 12px #b51f1f40}.actions.svelte-128wu3v{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.upload.svelte-128wu3v{padding:.6rem .9rem;background:var(--epfl-red-dark);color:var(--epfl-white);border:none;border-radius:var(--epfl-radius);font-size:.85rem;font-weight:700;cursor:pointer;font-family:inherit}.upload.svelte-128wu3v:hover{background:var(--epfl-red-darker)}.upload.svelte-128wu3v:active:not(:disabled){background:var(--epfl-red-darker)}.new-folder.svelte-128wu3v{padding:.6rem .7rem;background:var(--epfl-gray-50);color:var(--epfl-gray-700);border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);font-size:.85rem;font-weight:500;cursor:pointer;font-family:inherit;white-space:nowrap}.new-folder.svelte-128wu3v:hover{background:var(--epfl-gray-100)}.drop-hint.svelte-128wu3v{color:var(--epfl-gray-600);font-size:.8rem}.uploads.svelte-128wu3v{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem}.upload-item.svelte-128wu3v{display:flex;justify-content:space-between;gap:.5rem;padding:.45rem .6rem;background:var(--epfl-gray-50);border-radius:var(--epfl-radius);font-size:.75rem}.upload-item.svelte-128wu3v .filename:where(.svelte-128wu3v){flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--epfl-text)}.upload-item.svelte-128wu3v .status-label:where(.svelte-128wu3v){color:var(--epfl-gray-600);white-space:nowrap}.upload-item.error.svelte-128wu3v{background:var(--epfl-danger-bg)}.upload-item.error.svelte-128wu3v .status-label:where(.svelte-128wu3v){color:var(--epfl-danger-text)}.upload-item.done.svelte-128wu3v .status-label:where(.svelte-128wu3v){color:var(--epfl-success-text)}.bulk.svelte-128wu3v{display:flex;gap:.4rem}.bulk-btn.svelte-128wu3v{padding:.3rem .6rem;background:var(--epfl-gray-50);color:var(--epfl-gray-600);border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);font-size:.75rem;font-family:inherit;cursor:pointer}.bulk-btn.svelte-128wu3v:hover:not(:disabled){background:var(--epfl-gray-100)}.bulk-btn.svelte-128wu3v:disabled{opacity:.5;cursor:not-allowed}.bulk-btn.danger.svelte-128wu3v:not(:disabled){color:var(--epfl-danger-text);border-color:var(--epfl-danger-border)}.bulk-btn.danger.svelte-128wu3v:hover:not(:disabled){background:var(--epfl-danger-bg)}.move-select.svelte-128wu3v{padding:.3rem .4rem;background:var(--epfl-gray-50);color:var(--epfl-gray-700);border:1px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);font-size:.75rem;font-family:inherit;cursor:pointer;max-width:11rem}.doc-tree.svelte-128wu3v{display:flex;flex-direction:column;gap:.25rem;border-radius:var(--epfl-radius)}.doc-tree.root-drop.svelte-128wu3v{outline:2px dashed var(--epfl-red-dark);outline-offset:2px;background:var(--epfl-gray-100)}.drag-hint.svelte-128wu3v{margin:0;padding:.3rem .5rem;font-size:.72rem;color:var(--epfl-red-dark);background:var(--epfl-gray-100);border-radius:var(--epfl-radius)}.folder.svelte-128wu3v{display:flex;flex-direction:column;gap:.25rem;border-radius:var(--epfl-radius)}.folder.drop-target.svelte-128wu3v{outline:2px dashed var(--epfl-red-dark);outline-offset:1px;background:var(--epfl-gray-100)}.folder.dragging-src.svelte-128wu3v>.folder-row:where(.svelte-128wu3v){opacity:.4}.folder-row.svelte-128wu3v{display:flex;align-items:center;gap:.35rem;padding:.35rem .4rem;border-radius:var(--epfl-radius);background:var(--epfl-gray-50);border:1px solid var(--epfl-gray-100)}.chevron.svelte-128wu3v{background:none;border:none;color:var(--epfl-gray-600);cursor:pointer;font-size:.7rem;padding:0 .15rem;line-height:1}.folder-name.svelte-128wu3v{flex:1;display:flex;align-items:center;gap:.35rem;background:none;border:none;font-family:inherit;font-size:.82rem;font-weight:600;color:var(--epfl-gray-700);cursor:pointer;text-align:left;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-count.svelte-128wu3v{font-weight:400;font-size:.7rem;color:var(--epfl-gray-400)}.folder-children.svelte-128wu3v{display:flex;flex-direction:column;gap:.25rem;margin-left:.85rem;padding-left:.5rem;border-left:1px solid var(--epfl-gray-100)}.doc-row-wrap.svelte-128wu3v{display:flex;align-items:flex-start;gap:.25rem;padding:.5rem;border-radius:var(--epfl-radius);background:var(--epfl-white);border:1px solid var(--epfl-gray-100)}.doc-row-wrap.active.svelte-128wu3v{border-color:var(--epfl-red-dark);background:var(--epfl-gray-50)}.doc-row-wrap.dragging.svelte-128wu3v{opacity:.4}.grip.svelte-128wu3v{color:var(--epfl-gray-200);cursor:grab;font-size:.95rem;line-height:1;padding:.15rem .25rem;align-self:center;-webkit-user-select:none;user-select:none;-webkit-user-drag:element;touch-action:none}.grip.svelte-128wu3v:active{cursor:grabbing}.drag-ghost.svelte-128wu3v{position:fixed;z-index:1000;transform:translate(8px,8px);pointer-events:none;max-width:16rem;padding:.3rem .55rem;background:var(--epfl-red-dark);color:var(--epfl-white);border-radius:var(--epfl-radius);font-size:.78rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 4px 12px #b51f1f4d}.doc-row-wrap.svelte-128wu3v:hover .grip:where(.svelte-128wu3v),.folder-row.svelte-128wu3v:hover .grip:where(.svelte-128wu3v){color:var(--epfl-gray-600)}.doc-row.svelte-128wu3v{flex:1;display:flex;gap:.5rem;align-items:flex-start;cursor:pointer}.doc-info.svelte-128wu3v{flex:1;min-width:0}.doc-name.svelte-128wu3v{font-size:.85rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-meta.svelte-128wu3v{font-size:.7rem;color:var(--epfl-gray-400);margin-top:.15rem}.delete.svelte-128wu3v{background:none;border:none;color:var(--epfl-gray-400);font-size:1.1rem;cursor:pointer;padding:0 .4rem}.delete.svelte-128wu3v:hover{color:var(--epfl-danger)}.empty.svelte-128wu3v{font-size:.85rem;color:var(--epfl-gray-400);text-align:center;padding:1.5rem .5rem}.bypass-row.svelte-128wu3v{display:flex;align-items:center;gap:.45rem;padding:.45rem .55rem;background:var(--epfl-gray-50);border:1px solid var(--epfl-gray-100);border-radius:var(--epfl-radius);font-size:.78rem;color:var(--epfl-gray-700);cursor:pointer;position:relative}.bypass-row.svelte-128wu3v input[type=checkbox]:where(.svelte-128wu3v){cursor:pointer}.bypass-row.svelte-128wu3v input[type=checkbox]:where(.svelte-128wu3v):disabled{cursor:not-allowed}.bypass-row.svelte-128wu3v input[type=checkbox]:where(.svelte-128wu3v):disabled+.bypass-label:where(.svelte-128wu3v){color:var(--epfl-gray-400);cursor:not-allowed}.bypass-label.svelte-128wu3v{flex:1;line-height:1.3}.info-icon.svelte-128wu3v{color:var(--epfl-gray-600);font-size:.85rem;margin-left:.2rem}.size-estimate.svelte-128wu3v{font-size:.72rem;font-variant-numeric:tabular-nums;color:var(--epfl-gray-600);background:var(--epfl-white);border:1px solid var(--epfl-gray-100);padding:.1rem .35rem;border-radius:var(--epfl-radius);white-space:nowrap}.size-estimate.warn-soft.svelte-128wu3v{color:var(--epfl-warning-text);border-color:var(--epfl-warning);background:var(--epfl-warning-bg)}.size-estimate.warn-hard.svelte-128wu3v{color:var(--epfl-danger-text);border-color:var(--epfl-danger-border);background:var(--epfl-danger-bg)}.size-warn.svelte-128wu3v{margin:0;padding:.45rem .6rem;border-radius:var(--epfl-radius);font-size:.75rem;line-height:1.35}.size-warn.soft.svelte-128wu3v{background:var(--epfl-warning-bg);border:1px solid var(--epfl-warning);color:var(--epfl-warning-text)}.size-warn.hard.svelte-128wu3v{background:var(--epfl-danger-bg);border:1px solid var(--epfl-danger-border);color:var(--epfl-danger-text)}.tooltip-wrap.svelte-128wu3v{position:relative}.tooltip-wrap.svelte-128wu3v .tooltip:where(.svelte-128wu3v){position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:50;background:var(--epfl-text);color:var(--epfl-white);padding:.55rem .7rem;border-radius:var(--epfl-radius);font-size:.72rem;line-height:1.4;box-shadow:0 4px 12px #0000002e;opacity:0;transform:translateY(-2px);pointer-events:none;transition:opacity .12s ease,transform .12s ease}.tooltip-wrap.svelte-128wu3v .tooltip:where(.svelte-128wu3v) strong{color:var(--epfl-gray-400);font-weight:600}.tooltip-wrap.svelte-128wu3v .tooltip:where(.svelte-128wu3v) code{background:#ffffff1f;padding:0 .25rem;border-radius:var(--epfl-radius);font-size:.95em}.tooltip-wrap.svelte-128wu3v .tooltip:where(.svelte-128wu3v):after{content:"";position:absolute;bottom:100%;left:1rem;border:5px solid transparent;border-bottom-color:var(--epfl-text)}.tooltip-wrap.svelte-128wu3v:hover .tooltip:where(.svelte-128wu3v),.tooltip-wrap.svelte-128wu3v:focus-within .tooltip:where(.svelte-128wu3v){opacity:1;transform:translateY(0)}header.svelte-1tj291v{border-bottom:1px solid var(--epfl-gray-100);padding:.75rem 1rem 0;background:var(--epfl-white);position:sticky;top:0;z-index:10}.top.svelte-1tj291v{display:flex;align-items:center;gap:.5rem}.logo.svelte-1tj291v{height:1.05rem;width:auto;flex:none;color:var(--epfl-red)}.rule.svelte-1tj291v{width:1px;height:1.1rem;background:var(--epfl-gray-200);flex:none}h1.svelte-1tj291v{margin:0;font-size:1rem;font-weight:700;letter-spacing:-.01em}.version.svelte-1tj291v{font-size:.7rem;color:var(--epfl-gray-400);margin-right:auto}.icon-btn.svelte-1tj291v{background:none;border:none;font-size:1.1rem;color:var(--epfl-gray-600);cursor:pointer;padding:.25rem .5rem;border-radius:var(--epfl-radius);font-family:inherit;line-height:1}.icon-btn.svelte-1tj291v:hover:not(:disabled){background:var(--epfl-gray-100);color:var(--epfl-text)}.icon-btn.svelte-1tj291v:disabled{opacity:.4;cursor:not-allowed}.active-docs.svelte-1tj291v{font-size:.75rem;color:var(--epfl-gray-700);padding:.5rem 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.muted.svelte-1tj291v{color:var(--epfl-gray-400)}.tabs.svelte-1tj291v{display:flex;gap:.25rem;margin-top:.25rem}.tabs.svelte-1tj291v button:where(.svelte-1tj291v){background:none;border:none;padding:.5rem .75rem;font-size:.85rem;color:var(--epfl-gray-600);cursor:pointer;border-bottom:3px solid transparent;font-family:inherit}.tabs.svelte-1tj291v button:where(.svelte-1tj291v):hover{color:var(--epfl-text)}.tabs.svelte-1tj291v button.active:where(.svelte-1tj291v){color:var(--epfl-red-dark);border-bottom-color:var(--epfl-red);font-weight:700}.backdrop.svelte-4jqw1f{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:110;padding:1rem;animation:svelte-4jqw1f-fade .12s ease-out}.modal.svelte-4jqw1f{background:var(--epfl-white);border-radius:var(--epfl-radius-lg);box-shadow:0 10px 25px #00000040;max-width:460px;width:100%;max-height:85vh;overflow-y:auto;padding:1.1rem 1.2rem 1rem;animation:svelte-4jqw1f-slide .15s ease-out}h2.svelte-4jqw1f{margin:0 0 .8rem;font-size:.95rem;font-weight:600;color:var(--epfl-text)}h3.svelte-4jqw1f{margin:0 0 .35rem;font-size:.82rem;font-weight:600;color:var(--epfl-red-dark)}section.svelte-4jqw1f{margin-bottom:.9rem}p.svelte-4jqw1f{margin:0 0 .5rem;font-size:.82rem;line-height:1.45;color:var(--epfl-gray-700)}.bubbles.svelte-4jqw1f{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.4rem}.bubbles.svelte-4jqw1f li:where(.svelte-4jqw1f){font-size:.82rem;line-height:1.45;color:var(--epfl-gray-700)}.pill.svelte-4jqw1f{display:inline-block;margin-right:.3rem;padding:.1rem .45rem;border:1px solid var(--epfl-red-dark);border-radius:999px;background:var(--epfl-gray-100);color:var(--epfl-red-dark);font-size:.74rem;font-weight:500;white-space:nowrap}.tip.svelte-4jqw1f{margin-top:.55rem;padding:.45rem .6rem;background:var(--epfl-gray-50);border-left:3px solid var(--epfl-gray-200);border-radius:var(--epfl-radius);margin-bottom:0}code.svelte-4jqw1f{font-size:.78rem;background:var(--epfl-gray-100);padding:0 .2rem;border-radius:3px}strong.svelte-4jqw1f{color:var(--epfl-text)}.actions.svelte-4jqw1f{display:flex;justify-content:flex-end;margin-top:.4rem}button.svelte-4jqw1f{padding:.45rem .9rem;border-radius:var(--epfl-radius);font-size:.82rem;font-family:inherit;cursor:pointer;border:1px solid transparent}.primary.svelte-4jqw1f{background:var(--epfl-red-dark);color:var(--epfl-white)}.primary.svelte-4jqw1f:hover{background:var(--epfl-red-darker)}@keyframes svelte-4jqw1f-fade{0%{opacity:0}to{opacity:1}}@keyframes svelte-4jqw1f-slide{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}html,body{height:100%;margin:0}body{font-family:var(--epfl-font);color:var(--epfl-text);background:var(--epfl-gray-50);overflow:hidden}a{color:var(--epfl-text);text-decoration:underline}a:hover{color:var(--epfl-red-dark)}*{box-sizing:border-box}main.svelte-ycy2le{display:flex;flex-direction:column;height:100vh;background:var(--epfl-gray-50)}.loading.svelte-ycy2le{padding:2rem;text-align:center;color:var(--epfl-gray-400)}.view.svelte-ycy2le{flex:1;overflow-y:auto;min-height:0;display:flex;flex-direction:column}.config-wrap.svelte-ycy2le{flex:1;overflow-y:auto}.back.svelte-ycy2le{margin:.75rem 1rem 0;background:none;border:1px solid var(--epfl-gray-200);padding:.3rem .6rem;border-radius:var(--epfl-radius);font-size:.75rem;cursor:pointer;font-family:inherit;color:var(--epfl-gray-600)}.back.svelte-ycy2le:hover{background:var(--epfl-gray-100)}.note.svelte-ycy2le{padding:.75rem 1rem 0;margin:0;font-size:.85rem;color:var(--epfl-gray-600)}
