.lang-switcher.svelte-1v2j48r{display:flex;gap:.25rem}.lang-btn.svelte-1v2j48r{padding:.25rem .5rem;border:1px solid var(--border);background:var(--background);border-radius:var(--radius);font-size:.75rem;text-transform:uppercase;cursor:pointer;transition:all .2s}.lang-btn.svelte-1v2j48r:hover{background:var(--surface)}.lang-btn.active.svelte-1v2j48r{background:var(--primary);color:#fff;border-color:var(--primary)}.header.svelte-1elxaub{background:var(--background);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.nav.svelte-1elxaub{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;gap:2rem}.logo.svelte-1elxaub{font-size:1.25rem;font-weight:700;color:var(--text);text-decoration:none}.menu-toggle.svelte-1elxaub{display:none;background:none;border:none;padding:.5rem;cursor:pointer}.hamburger.svelte-1elxaub{display:block;width:24px;height:2px;background:var(--text);position:relative;transition:background .2s}.hamburger.svelte-1elxaub:before,.hamburger.svelte-1elxaub:after{content:"";position:absolute;left:0;width:100%;height:2px;background:var(--text);transition:transform .2s}.hamburger.svelte-1elxaub:before{top:-7px}.hamburger.svelte-1elxaub:after{bottom:-7px}.hamburger.open.svelte-1elxaub{background:transparent}.hamburger.open.svelte-1elxaub:before{transform:translateY(7px) rotate(45deg)}.hamburger.open.svelte-1elxaub:after{transform:translateY(-7px) rotate(-45deg)}.nav-content.svelte-1elxaub{display:flex;align-items:center;gap:2rem;flex:1;justify-content:space-between}.nav-links.svelte-1elxaub{display:flex;list-style:none;gap:.5rem}.nav-links.svelte-1elxaub a:where(.svelte-1elxaub){padding:.5rem 1rem;color:var(--text);text-decoration:none;border-radius:var(--radius);transition:all .2s}.nav-links.svelte-1elxaub a:where(.svelte-1elxaub):hover{background:var(--surface)}.nav-links.svelte-1elxaub a.active:where(.svelte-1elxaub){background:var(--primary);color:#fff}.nav-actions.svelte-1elxaub{display:flex;align-items:center;gap:1rem}@media(max-width:768px){.menu-toggle.svelte-1elxaub{display:block}.nav-content.svelte-1elxaub{position:fixed;inset:61px 0 0;background:var(--background);flex-direction:column;padding:2rem;transform:translate(100%);transition:transform .3s;justify-content:flex-start;gap:2rem}.nav-content.open.svelte-1elxaub{transform:translate(0)}.nav-links.svelte-1elxaub{flex-direction:column;width:100%}.nav-links.svelte-1elxaub a:where(.svelte-1elxaub){display:block;padding:1rem;font-size:1.125rem}.nav-actions.svelte-1elxaub{flex-direction:column;width:100%;gap:1rem}.nav-actions.svelte-1elxaub .btn:where(.svelte-1elxaub){width:100%;justify-content:center}}.footer.svelte-jz8lnl{background:var(--surface);border-top:1px solid var(--border);padding:3rem 0 1.5rem;margin-top:auto}.footer-content.svelte-jz8lnl{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem}.footer-title.svelte-jz8lnl{font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.footer-section.svelte-jz8lnl h4:where(.svelte-jz8lnl){font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:1rem}.footer-desc.svelte-jz8lnl{color:var(--text-muted);font-size:.875rem;line-height:1.6}.footer-links.svelte-jz8lnl{list-style:none}.footer-links.svelte-jz8lnl li:where(.svelte-jz8lnl){margin-bottom:.5rem}.footer-links.svelte-jz8lnl a:where(.svelte-jz8lnl){color:var(--text);font-size:.875rem;transition:color .2s}.footer-links.svelte-jz8lnl a:where(.svelte-jz8lnl):hover{color:var(--primary)}.footer-bottom.svelte-jz8lnl{border-top:1px solid var(--border);padding-top:1.5rem;text-align:center}.footer-bottom.svelte-jz8lnl p:where(.svelte-jz8lnl){color:var(--text-muted);font-size:.875rem}.toast-container.svelte-1cpok13{position:fixed;bottom:1rem;right:1rem;z-index:1100;display:flex;flex-direction:column;gap:.5rem}.toast.svelte-1cpok13{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;border-radius:var(--radius);background:var(--background);box-shadow:var(--shadow-lg);min-width:280px;max-width:400px;animation:svelte-1cpok13-slideIn .3s ease}@keyframes svelte-1cpok13-slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success.svelte-1cpok13{border-left:4px solid var(--success)}.toast-error.svelte-1cpok13{border-left:4px solid var(--danger)}.toast-warning.svelte-1cpok13{border-left:4px solid var(--warning)}.toast-info.svelte-1cpok13{border-left:4px solid var(--primary)}.toast-icon.svelte-1cpok13{font-size:1rem;font-weight:700}.toast-success.svelte-1cpok13 .toast-icon:where(.svelte-1cpok13){color:var(--success)}.toast-error.svelte-1cpok13 .toast-icon:where(.svelte-1cpok13){color:var(--danger)}.toast-warning.svelte-1cpok13 .toast-icon:where(.svelte-1cpok13){color:var(--warning)}.toast-info.svelte-1cpok13 .toast-icon:where(.svelte-1cpok13){color:var(--primary)}.toast-message.svelte-1cpok13{flex:1;font-size:.875rem}.toast-close.svelte-1cpok13{background:none;border:none;font-size:1.25rem;color:var(--text-muted);cursor:pointer;padding:0;line-height:1}.toast-close.svelte-1cpok13:hover{color:var(--text)}.modal-backdrop.svelte-ta60gp{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:svelte-ta60gp-fadeIn .2s ease}@keyframes svelte-ta60gp-fadeIn{0%{opacity:0}to{opacity:1}}.modal.svelte-ta60gp{background:var(--background);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:svelte-ta60gp-slideUp .2s ease}@keyframes svelte-ta60gp-slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-sm.svelte-ta60gp{max-width:400px}.modal-md.svelte-ta60gp{max-width:600px}.modal-lg.svelte-ta60gp{max-width:900px}.modal-header.svelte-ta60gp{padding:1rem 1.5rem;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.modal-title.svelte-ta60gp{font-size:1.125rem;font-weight:600;margin:0}.modal-close.svelte-ta60gp{background:none;border:none;font-size:1.5rem;color:var(--text-muted);cursor:pointer;padding:0;line-height:1}.modal-close.svelte-ta60gp:hover{color:var(--text)}.modal-body.svelte-ta60gp{padding:1.5rem;overflow-y:auto;flex:1}.modal-footer.svelte-ta60gp{padding:1rem 1.5rem;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:.5rem}.drop-zone.svelte-ux1wx1{border:2px dashed var(--border);border-radius:var(--radius);padding:2rem;text-align:center;cursor:pointer;transition:all .2s}.drop-zone.svelte-ux1wx1:hover,.drop-zone.active.svelte-ux1wx1{border-color:var(--primary);background:#2563eb0d}.drop-zone.uploading.svelte-ux1wx1{pointer-events:none;opacity:.7}.hidden-input.svelte-ux1wx1{display:none}.drop-content.svelte-ux1wx1{display:flex;flex-direction:column;align-items:center;gap:.75rem}.drop-icon.svelte-ux1wx1{width:48px;height:48px;color:var(--text-muted)}.drop-text.svelte-ux1wx1{font-size:.875rem;color:var(--text)}.drop-hint.svelte-ux1wx1{font-size:.75rem;color:var(--text-muted)}.upload-indicator.svelte-ux1wx1{display:flex;flex-direction:column;align-items:center;gap:.75rem}.spinner.svelte-ux1wx1{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:svelte-ux1wx1-spin 1s linear infinite}@keyframes svelte-ux1wx1-spin{to{transform:rotate(360deg)}}.editor-container.svelte-1afg4yo{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.editor-toolbar.svelte-1afg4yo{display:flex;flex-wrap:wrap;gap:.25rem;padding:.5rem;background:var(--surface);border-bottom:1px solid var(--border)}.toolbar-group.svelte-1afg4yo{display:flex;gap:.25rem}.toolbar-divider.svelte-1afg4yo{width:1px;background:var(--border);margin:0 .25rem}.editor-toolbar.svelte-1afg4yo button:where(.svelte-1afg4yo){padding:.375rem .625rem;border:1px solid var(--border);background:var(--background);border-radius:var(--radius);font-size:.75rem;cursor:pointer;transition:all .2s}.editor-toolbar.svelte-1afg4yo button:where(.svelte-1afg4yo):hover{background:var(--border)}.editor-content.svelte-1afg4yo{padding:1rem;outline:none;background:var(--background)}.editor-content.svelte-1afg4yo:empty:before{content:attr(data-placeholder);color:var(--text-muted)}.editor-content.svelte-1afg4yo:focus{box-shadow:inset 0 0 0 2px #2563eb33}.publication-card.svelte-jkpdds{background:var(--background);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:box-shadow .2s}.publication-card.svelte-jkpdds:hover{box-shadow:var(--shadow-lg)}.card-image.svelte-jkpdds{aspect-ratio:3/4;overflow:hidden;background:var(--surface)}.card-image.svelte-jkpdds img:where(.svelte-jkpdds){width:100%;height:100%;object-fit:cover}.card-content.svelte-jkpdds{padding:1rem}.card-title.svelte-jkpdds{font-size:1rem;font-weight:600;margin-bottom:.5rem;color:var(--text);text-decoration:none;display:block}a.card-title.svelte-jkpdds:hover{color:var(--primary)}.card-description.svelte-jkpdds{font-size:.875rem;color:var(--text-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-body.svelte-jkpdds{margin-top:.75rem}.card-actions.svelte-jkpdds{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.project-card.svelte-oviq8z{background:var(--background);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:box-shadow .2s}.project-card.svelte-oviq8z:hover{box-shadow:var(--shadow-lg)}.card-image.svelte-oviq8z{aspect-ratio:16/9;overflow:hidden;background:var(--surface)}.card-image.svelte-oviq8z img:where(.svelte-oviq8z){width:100%;height:100%;object-fit:cover}.card-content.svelte-oviq8z{padding:1.25rem}.card-title.svelte-oviq8z{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:var(--text);text-decoration:none;display:block}a.card-title.svelte-oviq8z:hover{color:var(--primary)}.card-summary.svelte-oviq8z{font-size:.875rem;color:var(--text-muted);line-height:1.5;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-link.svelte-oviq8z{font-size:.875rem;font-weight:500;color:var(--primary)}.card-status.svelte-oviq8z{position:absolute;top:.75rem;right:.75rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;border-radius:4px;text-transform:uppercase}.status-active.svelte-oviq8z{background:#22c55ee6;color:#fff}.status-completed.svelte-oviq8z{background:#3b82f6e6;color:#fff}.status-planned.svelte-oviq8z{background:#f59e0be6;color:#fff}.card-image.svelte-oviq8z{position:relative}
