*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text-primary);line-height:1.5;-webkit-font-smoothing:antialiased}img,svg{display:block}button{cursor:pointer;font-family:inherit;border:none;background:none}input,textarea{font-family:inherit;font-size:inherit}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.logo.svelte-ppm6sn{display:flex;align-items:center}.logo-circle.svelte-ppm6sn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#000;color:#fff;font-size:.65rem;font-weight:800;font-family:var(--font-sans);flex-shrink:0;line-height:1;letter-spacing:-.03em}.collapse-btn.svelte-1iv2r60{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:background .15s,color .15s;flex-shrink:0}.collapse-btn.svelte-1iv2r60:hover{background:var(--color-surface-raised);color:var(--color-text-primary)}.header.svelte-13qyfft{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-3);min-height:52px;flex-shrink:0;border-bottom:1px solid var(--color-border)}.header.collapsed.svelte-13qyfft{justify-content:center;min-height:52px}.backdrop.svelte-ta60gp{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.panel.svelte-ta60gp{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 20px 60px #00000026;width:100%;max-width:600px;min-height:200px;max-height:80vh;display:flex;flex-direction:column;position:relative;overflow:hidden}.header.svelte-ta60gp{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);flex-shrink:0}.header.title-only.svelte-ta60gp{position:absolute;top:0;right:0;border-bottom:none;padding:var(--space-3) var(--space-3);z-index:10}.title.svelte-ta60gp{font-size:1rem;font-weight:600;color:var(--color-text-primary)}.close-btn.svelte-ta60gp{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:background .15s,color .15s}.close-btn.svelte-ta60gp:hover{background:var(--color-surface-raised);color:var(--color-text-primary)}.body.svelte-ta60gp{padding:var(--space-5);overflow-y:auto;flex:1}.body.no-header.svelte-ta60gp{padding:0}.action-btn.svelte-yeqk62{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);font-size:.875rem;color:var(--color-text-secondary);transition:background .15s,color .15s}.action-btn.svelte-yeqk62:hover{background:var(--color-surface-raised);color:var(--color-text-primary)}.icon-only.svelte-yeqk62{justify-content:center;padding:var(--space-2)}.search-modal.svelte-yeqk62{display:flex;flex-direction:column;gap:0;width:100%;height:400px}.search-input-wrapper.svelte-yeqk62{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-wrap:wrap;flex-shrink:0}.chip.svelte-yeqk62{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;white-space:nowrap;transition:opacity .15s}.chip.svelte-yeqk62:hover{opacity:.8}.chip-close.svelte-yeqk62{font-size:1rem;line-height:1;opacity:0;transition:opacity .15s}.chip.svelte-yeqk62:hover .chip-close:where(.svelte-yeqk62){opacity:1}.subject-chip.svelte-yeqk62{background:var(--color-tag-1-bg);color:var(--color-tag-1-text)}.search-input.svelte-yeqk62{flex:1;min-width:120px;padding:var(--space-2) 0;border:none;background:transparent;color:var(--color-text-primary);font-size:.875rem;outline:none}.search-input.svelte-yeqk62::placeholder{color:var(--color-text-muted)}.results.svelte-yeqk62{flex:1;overflow-y:auto;display:flex;flex-direction:column;padding:var(--space-2) var(--space-3);scrollbar-width:none;-ms-overflow-style:none}.results.svelte-yeqk62::-webkit-scrollbar{display:none}.results-label.svelte-yeqk62{padding:var(--space-2) var(--space-2);font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.result-item.svelte-yeqk62{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2);text-align:left;color:var(--color-text-primary);font-size:.875rem;transition:background .15s;border-radius:var(--radius-sm)}.result-item.svelte-yeqk62:hover{background:var(--color-surface-raised)}.subject-icon.svelte-yeqk62{font-size:.875rem;flex-shrink:0}.subject-name.svelte-yeqk62{flex:1}.subject-rating.svelte-yeqk62{font-size:.75rem;color:var(--color-text-muted);font-weight:500}.footer.svelte-yeqk62{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-3);border-top:1px solid var(--color-border);flex-shrink:0}.upload-btn.svelte-yeqk62{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;transition:background .15s,color .15s}.upload-btn.svelte-yeqk62:hover{background:var(--color-surface-raised);color:var(--color-text-primary)}.go-btn.svelte-yeqk62{padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-surface);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;transition:background .15s,opacity .15s}.go-btn.svelte-yeqk62:hover:not(:disabled){background:var(--color-accent-hover)}.go-btn.svelte-yeqk62:disabled{opacity:.5;cursor:not-allowed}.action-btn.svelte-2vcf46{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);font-size:.875rem;color:var(--color-text-secondary);transition:background .15s,color .15s}.action-btn.svelte-2vcf46:hover{background:var(--color-surface-raised);color:var(--color-text-primary)}.icon-only.svelte-2vcf46{justify-content:center;padding:var(--space-2)}.search-modal.svelte-2vcf46{display:flex;flex-direction:column;gap:0;width:100%;height:400px}.search-input-wrapper.svelte-2vcf46{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-wrap:wrap;flex-shrink:0}.search-input.svelte-2vcf46{flex:1;min-width:120px;padding:var(--space-2) 0;border:none;background:transparent;color:var(--color-text-primary);font-size:.875rem;outline:none}.search-input.svelte-2vcf46::placeholder{color:var(--color-text-muted)}.results.svelte-2vcf46{flex:1;overflow-y:auto;display:flex;flex-direction:column;padding:var(--space-2) var(--space-3);scrollbar-width:none;-ms-overflow-style:none}.results.svelte-2vcf46::-webkit-scrollbar{display:none}.results-label.svelte-2vcf46{padding:var(--space-2) var(--space-2);font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.result-item.svelte-2vcf46{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2);text-align:left;color:var(--color-text-primary);font-size:.875rem;transition:background .15s;border-radius:var(--radius-sm)}.result-item.svelte-2vcf46:hover{background:var(--color-surface-raised)}.subject-icon.svelte-2vcf46{font-size:.875rem;flex-shrink:0;width:20px;text-align:center}.problem-details.svelte-2vcf46{flex:1;display:flex;flex-direction:column;gap:var(--space-1)}.subject-name.svelte-2vcf46{display:block}.tag-chips.svelte-2vcf46{display:flex;flex-wrap:wrap;gap:var(--space-1)}.tag-chip.svelte-2vcf46{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;white-space:nowrap}.subject-rating.svelte-2vcf46{font-size:.75rem;color:var(--color-text-muted);font-weight:500;flex-shrink:0}.no-results.svelte-2vcf46{font-size:.875rem;color:var(--color-text-muted);text-align:center;padding:var(--space-4) 0}.actions.svelte-dmbol5{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);border-bottom:1px solid var(--color-border);flex-shrink:0}.avatar.svelte-112qgxv{border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-family:var(--font-sans);flex-shrink:0;-webkit-user-select:none;user-select:none}.avatar-wrap.svelte-u49maq{position:relative;flex-shrink:0}.online-dot.svelte-u49maq{position:absolute;bottom:0;right:0;width:8px;height:8px;background:var(--color-online);border-radius:50%;border:1.5px solid var(--color-sidebar-bg)}.collapsed-unread.svelte-u49maq{position:absolute;top:-4px;right:-4px;width:14px;height:14px;border-radius:50%;background:var(--color-accent);color:#fff;font-size:.55rem;font-weight:700;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--color-sidebar-bg)}.friend-card.svelte-1n47x14{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border-radius:var(--radius-sm);transition:background .15s;text-align:left}.friend-card.svelte-1n47x14:hover{background:var(--color-surface-raised)}.friend-card.collapsed.svelte-1n47x14{justify-content:center;padding:var(--space-2) var(--space-1)}.friend-info.svelte-1n47x14{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.name.svelte-1n47x14{font-size:.875rem;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.name.unread.svelte-1n47x14{font-weight:700}.status.svelte-1n47x14{font-size:.72rem;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unread-badge.svelte-1n47x14{display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:9px;padding:0 4px;background:var(--color-accent);color:#fff;font-size:.65rem;font-weight:700;flex-shrink:0}.add-btn.svelte-10qiddq{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:.8rem;color:var(--color-text-muted);transition:color .15s,background .15s;width:100%}.add-btn.svelte-10qiddq:hover{color:var(--color-accent);background:var(--color-surface-raised)}.section.svelte-168xpvv{padding:var(--space-2);border-bottom:1px solid var(--color-border)}.section-heading.svelte-168xpvv{font-size:.7rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-1) var(--space-1) var(--space-2)}.friend-requests-btn.svelte-168xpvv{font-size:.75rem;font-weight:500;color:var(--color-text-muted);padding:var(--space-1) var(--space-1);margin-bottom:var(--space-2);text-align:left;cursor:pointer;border-radius:var(--radius-sm);transition:background .15s,color .15s;border:none;background:transparent;width:100%;display:flex;justify-content:space-between;align-items:center}.friend-requests-btn.svelte-168xpvv:hover{background:var(--color-surface-raised);color:var(--color-accent)}.friend-requests-btn.has-requests.svelte-168xpvv{font-weight:600}.request-badge.svelte-168xpvv{display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:9px;padding:0 4px;background:var(--color-accent);color:#fff;font-size:.65rem;font-weight:700;flex-shrink:0}.list.svelte-168xpvv{display:flex;flex-direction:column;gap:2px}.requests-list.svelte-168xpvv{display:flex;flex-direction:column;gap:var(--space-3)}.request-card.svelte-168xpvv{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface)}.request-info.svelte-168xpvv{display:flex;align-items:center;gap:var(--space-3)}.avatar.svelte-168xpvv{width:40px;height:40px;border-radius:50%;background:var(--color-surface-raised);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;color:var(--color-text-primary)}.details.svelte-168xpvv{display:flex;flex-direction:column;gap:2px}.display-name.svelte-168xpvv{font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.username.svelte-168xpvv{font-size:.75rem;color:var(--color-text-muted)}.actions.svelte-168xpvv{display:flex;gap:var(--space-2)}.accept-btn.svelte-168xpvv,.reject-btn.svelte-168xpvv{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;transition:background .15s,color .15s;border:none;cursor:pointer}.accept-btn.svelte-168xpvv{background:var(--color-online);color:#fff}.accept-btn.svelte-168xpvv:hover{background:#16a34a}.reject-btn.svelte-168xpvv{background:var(--color-surface-raised);color:var(--color-text-secondary)}.reject-btn.svelte-168xpvv:hover{background:var(--color-border);color:var(--color-text-primary)}.recent-card.svelte-19yaod3{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);width:100%;padding:var(--space-2);border-radius:var(--radius-sm);text-align:left;transition:background .15s}.recent-card.svelte-19yaod3:hover{background:var(--color-surface-raised)}.top-row.svelte-19yaod3{display:flex;align-items:center;gap:var(--space-2);width:100%}.title-and-tags.svelte-19yaod3{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-width:0;max-width:calc(100% - 60px)}.title.svelte-19yaod3{font-size:.8rem;color:var(--color-text-primary);line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.elo-badge-container.svelte-19yaod3{display:flex;align-items:center;flex-shrink:0;margin-right:4px}.elo-badge.svelte-19yaod3{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:.65rem;font-weight:500;border:1px solid;border-radius:4px;padding:3px 5px}.elo-badge.svelte-19yaod3 .tier-box:where(.svelte-19yaod3){font-size:.65rem;font-weight:600;line-height:1;border:1px solid currentColor;border-radius:2px;padding:1px 3px;display:inline-flex;align-items:center;justify-content:center}.elo-badge.svelte-19yaod3 .elo:where(.svelte-19yaod3){line-height:1;font-size:.65rem}.meta.svelte-19yaod3{display:flex;align-items:center;gap:var(--space-1);flex-wrap:nowrap;overflow:hidden;width:100%}.tag.svelte-19yaod3{font-size:.62rem;background:#0000000f;border-radius:var(--radius-sm);padding:1px 5px;color:var(--color-text-muted);line-height:1.5;white-space:nowrap;flex-shrink:0}.status-done.svelte-19yaod3{color:#22c55e;background:#dcfce7}.status-progress.svelte-19yaod3{color:#f59e0b;background:#fef9c3}.topic-tag.svelte-19yaod3{background:var(--color-tag-1-bg);color:var(--color-tag-1-text)}.section.svelte-yvrwcj{padding:var(--space-2)}.section-heading.svelte-yvrwcj{font-size:.7rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-1) var(--space-1) var(--space-2)}.list.svelte-yvrwcj{display:flex;flex-direction:column;gap:2px}.user-settings-wrap.svelte-un75f8{flex-shrink:0;border-top:1px solid var(--color-border);margin-top:auto}.user-row.svelte-un75f8{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-2)}.info.svelte-un75f8{display:flex;flex-direction:column;gap:2px;overflow:hidden;flex:1;min-width:0}.name.svelte-un75f8{font-size:.875rem;font-weight:500;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-label.svelte-un75f8{font-size:.7rem;font-weight:600;color:var(--color-accent)}.gear-wrap.svelte-un75f8,.gear-wrap-collapsed.svelte-un75f8{position:relative;flex-shrink:0}.gear-wrap-collapsed.svelte-un75f8{display:flex;justify-content:center;padding:var(--space-3) var(--space-2)}.gear-btn.svelte-un75f8{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:background .15s,color .15s}.gear-btn.svelte-un75f8:hover{background:var(--color-surface-raised);color:var(--color-text-secondary)}.gear-menu.svelte-un75f8{position:absolute;bottom:calc(100% + 4px);left:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000001a;min-width:140px;display:flex;flex-direction:column;padding:var(--space-1);z-index:200}.menu-item.svelte-un75f8{display:flex;align-items:center;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:.875rem;color:var(--color-text-primary);text-align:left;width:100%;transition:background .15s}.menu-item.svelte-un75f8:hover{background:var(--color-surface-raised)}.menu-item.danger.svelte-un75f8{color:var(--color-danger, #e53e3e)}.sidebar.svelte-d8bm6{width:260px;flex-shrink:0;display:flex;flex-direction:column;background:var(--color-sidebar-bg);border-right:1px solid var(--color-border);overflow:visible;transition:width .2s ease}.sidebar.collapsed.svelte-d8bm6{width:56px}.scroll-area.svelte-d8bm6{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.user-message.svelte-1y1o7b{width:100%;display:flex;align-items:center;gap:var(--space-2);justify-content:flex-end}.content.svelte-1y1o7b{display:flex;flex-direction:column;align-items:flex-end;gap:2px;max-width:75%}.sender-name.svelte-1y1o7b{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);margin-right:var(--space-3);margin-bottom:2px}.bubble.svelte-1y1o7b{background:var(--color-user-message-bg);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-sm) var(--radius-lg);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.text.svelte-1y1o7b{font-size:.9rem;color:var(--color-text-primary);line-height:1.6;white-space:pre-wrap}.time.svelte-1y1o7b{font-size:.7rem;color:var(--color-text-muted);text-align:right}.file-attachment.svelte-1y1o7b{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);background:#ffffff1a;border-radius:var(--radius-sm);font-size:.8rem;margin-bottom:var(--space-2)}.file-attachment.svelte-1y1o7b svg:where(.svelte-1y1o7b){flex-shrink:0}.filename.svelte-1y1o7b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dux-message.svelte-d728fj{display:flex;align-items:center;gap:var(--space-2)}.content.svelte-d728fj{display:flex;flex-direction:column;align-items:flex-start;gap:2px;max-width:75%}.sender-name.svelte-d728fj{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);margin-left:var(--space-3);margin-bottom:2px}.bubble.svelte-d728fj{background:var(--color-dux-message-bg);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--radius-sm);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-1);border:1px solid var(--color-border)}.text.svelte-d728fj{font-size:.9rem;color:var(--color-text-primary);line-height:1.6;white-space:pre-wrap}.time.svelte-d728fj{font-size:.7rem;color:var(--color-text-muted)}.list.svelte-123113w{display:flex;flex-direction:column;gap:var(--space-4);flex:1}.empty.svelte-123113w{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:.875rem}.chat-content.svelte-15wofxk{display:flex;flex-direction:column;min-height:0}.dropup.svelte-18keku0{position:fixed;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001a;padding:var(--space-2);min-width:160px;z-index:10000}.problems-list.svelte-18keku0{display:flex;flex-direction:column;gap:var(--space-1)}.problem-item.svelte-18keku0{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;font-size:.875rem;color:var(--color-text);transition:background .15s ease;width:100%}.problem-item.svelte-18keku0:hover{background:var(--color-surface-hover)}.problem-label.svelte-18keku0{font-weight:500}.status-icon.svelte-18keku0{font-size:.75rem;opacity:.7}.problem-item.complete.svelte-18keku0 .status-icon:where(.svelte-18keku0){color:var(--color-tag-2-text)}.problem-button.svelte-1dvekmw{padding:2px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;background:transparent;border:1px solid transparent;color:var(--color-text);cursor:pointer;white-space:nowrap;transition:border-color .15s ease}.problem-button.svelte-1dvekmw:hover{border-color:var(--color-border)}.progress-indicator.svelte-nwwzwu{display:flex;align-items:center;gap:var(--space-1)}.circle.svelte-nwwzwu{width:9px;height:9px;border-radius:50%}.circle--incomplete.svelte-nwwzwu{background:#fff;border:1px solid var(--color-border)}.circle--in-progress.svelte-nwwzwu{background:#fbbf24;border:none}.circle--complete.svelte-nwwzwu{background:var(--color-online);border:none}.session-btn.svelte-h4b1us{display:flex;align-items:center;gap:4px;padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:.8rem;color:var(--color-text-secondary);transition:background .15s,color .15s}.session-btn.svelte-h4b1us:hover{background:var(--color-surface-raised);color:var(--color-text-primary)}.problems-count.svelte-h4b1us,.rating-delta.svelte-h4b1us{font-weight:600;font-variant-numeric:tabular-nums}.fire-emoji.svelte-h4b1us{font-size:.75rem}.rating-delta.svelte-h4b1us{color:#22c55e;font-size:.75rem}.time-period-selector.svelte-h4b1us{display:flex;gap:var(--space-2);margin-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.tab.svelte-h4b1us{padding:var(--space-2) var(--space-3);font-size:.875rem;color:var(--color-text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s}.tab.svelte-h4b1us:hover{color:var(--color-text-primary)}.tab.active.svelte-h4b1us{color:var(--color-text-primary);border-bottom-color:var(--color-online)}.chart-container.svelte-h4b1us{min-height:200px;display:flex;align-items:center;justify-content:center}.chart.svelte-h4b1us{width:100%;height:200px}.empty-state.svelte-h4b1us,.stub.svelte-h4b1us{font-size:.875rem;color:var(--color-text-secondary);padding:var(--space-4) 0;text-align:center}.rating-btn.svelte-vrq5c2{display:flex;align-items:center;gap:4px;padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:.8rem;color:var(--color-text-secondary);transition:background .15s,color .15s}.rating-btn.svelte-vrq5c2:hover{background:var(--color-surface-raised);color:var(--color-text-primary)}.score.svelte-vrq5c2{font-weight:600;font-variant-numeric:tabular-nums}.rating-breakdown.svelte-vrq5c2{display:flex;flex-direction:column;gap:var(--space-3)}.stat-row.svelte-vrq5c2{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.stat-row.svelte-vrq5c2:last-child{border-bottom:none;padding-bottom:0}.stat-label.svelte-vrq5c2{font-size:.875rem;color:var(--color-text-secondary)}.stat-value.svelte-vrq5c2{font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.lb-player.svelte-sooqg4{display:flex;align-items:center;gap:var(--space-2)}.lb-name.svelte-sooqg4{font-size:.875rem;color:var(--color-text-primary)}.you-label.svelte-sooqg4{font-size:.7rem;background:var(--color-accent);color:var(--color-surface);padding:1px 5px;border-radius:var(--radius-sm)}.lb-btn.svelte-aguc5e{display:flex;align-items:center;gap:4px;padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:.8rem;color:var(--color-text-secondary);transition:background .15s,color .15s}.lb-btn.svelte-aguc5e:hover{background:var(--color-surface-raised);color:var(--color-text-primary)}.rank.svelte-aguc5e{font-weight:600;font-variant-numeric:tabular-nums}.lb-table.svelte-aguc5e{display:flex;flex-direction:column;gap:2px}.lb-header.svelte-aguc5e{display:grid;grid-template-columns:40px 1fr 70px 70px;padding:var(--space-2) var(--space-2);font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border);margin-bottom:var(--space-1)}.lb-row.svelte-aguc5e{display:grid;grid-template-columns:40px 1fr 70px 70px;align-items:center;padding:var(--space-2);border-radius:var(--radius-sm);transition:background .15s}.lb-row.svelte-aguc5e:hover{background:var(--color-surface-raised)}.lb-row.current-user.svelte-aguc5e{background:var(--color-user-message-bg)}.lb-rank.svelte-aguc5e{font-size:.8rem;font-weight:600;color:var(--color-text-muted)}.lb-rating.svelte-aguc5e,.lb-problems.svelte-aguc5e{font-size:.875rem;font-variant-numeric:tabular-nums;color:var(--color-text-secondary)}.topbar.svelte-lvfuop{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);gap:var(--space-3);min-height:40px;overflow:visible;position:relative;z-index:10}.left.svelte-lvfuop{display:flex;align-items:center;gap:var(--space-2);min-width:0;flex:1;position:relative;overflow:visible}.right.svelte-lvfuop{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.tag-chip.friend-tag.svelte-lvfuop{padding:1px 6px;border-radius:var(--radius-sm);font-size:.68rem;font-weight:500;background:var(--color-tag-5-bg);color:var(--color-tag-5-text);white-space:nowrap}.text-input-wrapper.svelte-1esr1h2{width:100%;display:flex;flex-direction:column;gap:var(--space-2)}.textarea.svelte-1esr1h2{width:100%;resize:none;border:none;outline:none;background:transparent;font-size:.9rem;color:var(--color-text-primary);line-height:1.6;min-height:60px;max-height:160px;overflow-y:auto;padding:var(--space-1) 0}.textarea.svelte-1esr1h2::placeholder{color:var(--color-text-muted)}.file-preview.svelte-1esr1h2{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface-raised);border-radius:var(--radius-sm);font-size:.8rem;color:var(--color-text-secondary)}.file-preview.svelte-1esr1h2 svg:where(.svelte-1esr1h2){flex-shrink:0}.filename.svelte-1esr1h2{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remove-btn.svelte-1esr1h2{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:background .15s,color .15s;flex-shrink:0}.remove-btn.svelte-1esr1h2:hover{background:var(--color-surface);color:var(--color-text-secondary)}.dropup.svelte-lj150g{position:absolute;bottom:calc(100% + var(--space-2));left:0;min-width:160px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 8px 24px #0000001f;z-index:200;overflow:hidden}.align-right.svelte-lj150g{left:auto;right:0}.list.svelte-qqoqok{display:flex;flex-direction:column;padding:var(--space-1);min-width:160px}.item.svelte-qqoqok{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:.875rem;color:var(--color-text-primary);text-align:left;width:100%;transition:background .15s}.item.svelte-qqoqok:hover{background:var(--color-surface-raised)}.modal-content.svelte-qqoqok{display:flex;flex-direction:column;gap:var(--space-3)}.url-input.svelte-qqoqok{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.875rem;background:var(--color-surface);color:var(--color-text-primary);width:100%}.url-input.svelte-qqoqok:focus{outline:2px solid var(--color-primary);outline-offset:-1px}.go-btn.svelte-qqoqok{padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;background:var(--color-primary);color:#fff;transition:opacity .15s;align-self:flex-end}.go-btn.svelte-qqoqok:hover{opacity:.9}.attach-wrap.svelte-19586tz{position:relative}.icon-btn.svelte-19586tz{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:background .15s,color .15s}.icon-btn.svelte-19586tz:hover{background:var(--color-surface-raised);color:var(--color-text-secondary)}.stub.svelte-repps5{padding:var(--space-4);min-width:160px}p.svelte-repps5{font-size:.875rem;color:var(--color-text-muted);font-style:italic}.canvas-wrap.svelte-tuir35{position:relative}.icon-btn.svelte-tuir35{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:background .15s,color .15s}.icon-btn.svelte-tuir35:hover{background:var(--color-surface-raised);color:var(--color-text-secondary)}.voice-send-btn.svelte-j4d43u{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);color:var(--color-text-muted);border:1px solid var(--color-border);transition:background .15s,color .15s,border-color .15s}.voice-send-btn.svelte-j4d43u:hover{background:var(--color-surface-raised);color:var(--color-text-secondary)}.voice-send-btn.send-mode.svelte-j4d43u{background:var(--color-accent);color:var(--color-surface);border-color:var(--color-accent)}.voice-send-btn.send-mode.svelte-j4d43u:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.chatbox.svelte-t4j0gq{background:var(--color-surface);display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:visible;min-height:140px}.input-area.svelte-t4j0gq{padding:var(--space-4) var(--space-5) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);min-height:120px}.input-controls.svelte-t4j0gq{display:flex;align-items:center;justify-content:space-between}.controls-left.svelte-t4j0gq,.controls-right.svelte-t4j0gq{display:flex;align-items:center;gap:var(--space-2)}.contact.svelte-xun0y2{padding:0 var(--space-5);font-size:.75rem;color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;height:auto;flex-shrink:0;width:100%;max-width:840px;background:var(--color-surface-base);position:relative}a.svelte-xun0y2{color:var(--color-text-muted);text-decoration:underline;text-underline-offset:2px}a.svelte-xun0y2:hover{color:var(--color-text-secondary)}.problem-header.svelte-1n1kafs{position:static;background:var(--color-surface-raised);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:var(--space-4) var(--space-5);padding-left:var(--space-5);padding-right:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);width:100%;max-width:800px}.header-top.svelte-1n1kafs{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.title.svelte-1n1kafs{font-size:.95rem;font-weight:700;color:var(--color-text-primary);margin:0;flex:1}.elo-badge.svelte-1n1kafs{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:.65rem;font-weight:500;border:1px solid;border-radius:4px;padding:3px 5px;flex-shrink:0}.elo-badge.svelte-1n1kafs .tier-box:where(.svelte-1n1kafs){font-size:.65rem;font-weight:600;line-height:1;border:1px solid currentColor;border-radius:2px;padding:1px 3px;display:inline-flex;align-items:center;justify-content:center}.elo-badge.svelte-1n1kafs .elo:where(.svelte-1n1kafs){line-height:1;font-size:.65rem}.tag-chips.svelte-1n1kafs{display:flex;flex-wrap:wrap;gap:var(--space-1)}.tag-chip.svelte-1n1kafs{font-size:.65rem;padding:1px 6px;border-radius:var(--radius-sm);font-weight:500}.body-text.svelte-1n1kafs{font-size:.9rem;font-style:italic;color:var(--color-text-secondary);line-height:1.7;margin:0;padding-top:var(--space-1)}.instruction.svelte-1n1kafs{font-size:.8rem;font-style:normal;color:var(--color-text-muted);line-height:1.5;margin:0}.friend-header.svelte-gz1jyo{position:static;display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-4);width:100%;max-width:800px;background:var(--color-surface-base)}.friend-name.svelte-gz1jyo{font-size:1rem;font-weight:600;color:var(--color-text-primary);margin:0}.main.svelte-yj5lqy{display:flex;flex-direction:row;height:100%;overflow:hidden;position:relative;justify-content:center}.header-container.svelte-yj5lqy{position:fixed;top:0;right:0;z-index:50;display:flex;justify-content:center;align-items:flex-start;padding-top:var(--space-6);pointer-events:none;transition:left .2s ease}.header-container.svelte-yj5lqy *{pointer-events:auto}.center-col.svelte-yj5lqy{display:flex;flex-direction:column;align-items:center;overflow-y:auto;overflow-x:hidden;width:100%;min-width:0;position:relative;flex:1;scroll-behavior:smooth;scrollbar-width:none;padding-bottom:240px;pointer-events:auto;clip-path:inset(145px 0 220px 0);-webkit-clip-path:inset(145px 0 220px 0)}.chat-scroll-wrapper.svelte-yj5lqy{width:100%;display:flex;flex-direction:column;align-items:center;padding-top:170px;pointer-events:none}.center-col.svelte-yj5lqy::-webkit-scrollbar{display:none}.chat-area.svelte-yj5lqy{width:100%;max-width:800px;overflow-y:visible;overflow-x:hidden;padding:0 var(--space-5);padding-bottom:var(--space-6);pointer-events:auto}.chatbox-wrapper.svelte-yj5lqy{position:fixed;bottom:0;right:0;z-index:50;display:flex;flex-direction:column;align-items:center;padding:var(--space-3) 0;gap:var(--space-3);background:var(--color-surface-base);transition:left .2s ease}.chatbox-area.svelte-yj5lqy{width:100%;max-width:840px;padding:0 var(--space-4)}.print-btn.svelte-1v88tlh{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);color:var(--color-text-muted);border:1px solid var(--color-border);background:var(--color-surface);transition:background .15s,color .15s}.print-btn.svelte-1v88tlh:hover{background:var(--color-surface-raised);color:var(--color-text-secondary)}.stub.svelte-1v88tlh{font-size:.875rem;color:var(--color-text-secondary);padding:var(--space-2) 0}.share-content.svelte-1lquriy{display:flex;flex-direction:column;gap:var(--space-4)}.description.svelte-1lquriy{font-size:.875rem;color:var(--color-text-secondary)}.link-row.svelte-1lquriy{display:flex;gap:var(--space-2)}.link-input.svelte-1lquriy{flex:1;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);font-size:.8rem;color:var(--color-text-secondary);font-family:var(--font-mono)}.copy-btn.svelte-1lquriy{padding:var(--space-2) var(--space-3);background:var(--color-accent);color:var(--color-surface);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;transition:background .15s;white-space:nowrap}.copy-btn.svelte-1lquriy:hover{background:var(--color-accent-hover)}.permissions.svelte-1lquriy{display:flex;flex-direction:column;gap:var(--space-2)}.perm-heading.svelte-1lquriy{font-size:.8rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-1)}.perm-row.svelte-1lquriy{display:flex;align-items:center;gap:var(--space-2);font-size:.875rem;color:var(--color-text-primary);cursor:not-allowed;opacity:.7}.stub-note.svelte-1lquriy{font-size:.75rem;color:var(--color-text-muted);font-style:italic}.share-btn.svelte-1fmsa5{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);color:var(--color-text-muted);border:1px solid var(--color-border);background:var(--color-surface);transition:background .15s,color .15s}.share-btn.svelte-1fmsa5:hover{background:var(--color-surface-raised);color:var(--color-text-secondary)}.export-bar.svelte-1ggguik{position:fixed;top:var(--space-4);right:var(--space-4);z-index:100;display:flex;flex-direction:row;align-items:center;gap:var(--space-2)}.inspector-overlay.svelte-bd2lb6{position:fixed;inset:0;pointer-events:none;z-index:9998}.inspector-box.svelte-bd2lb6{position:fixed;border:2px solid;border-radius:2px;pointer-events:none;box-sizing:border-box}.inspector-label.svelte-bd2lb6{position:absolute;top:2px;left:2px;transform:none;color:#fff;font-size:.6rem;font-weight:600;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;padding:1px 5px;border-radius:2px;white-space:nowrap;line-height:1.6;letter-spacing:.02em;pointer-events:none}.inspector-control.svelte-bd2lb6{position:fixed;bottom:16px;right:16px;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.hierarchy-panel.svelte-bd2lb6{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 2px 12px #0000001f;padding:6px 10px;display:flex;flex-direction:column;gap:0}.hierarchy-line.svelte-bd2lb6{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.6rem;white-space:nowrap;line-height:1.8;letter-spacing:.01em}.control-bar.svelte-bd2lb6{display:flex;align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;box-shadow:0 2px 12px #0000001f;padding:4px 6px;gap:4px}.eye-btn.svelte-bd2lb6{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;color:var(--color-text-muted);transition:background .15s,color .15s;flex-shrink:0}.eye-btn.svelte-bd2lb6:hover{background:var(--color-surface-raised);color:var(--color-text-primary)}.eye-btn.active.svelte-bd2lb6{color:var(--color-accent)}.eye-btn.active.svelte-bd2lb6:hover{background:var(--color-surface-raised)}.depth-btn.svelte-bd2lb6{display:flex;align-items:center;gap:4px;padding:3px 8px;border-radius:12px;font-size:.72rem;color:var(--color-text-secondary);transition:background .15s,color .15s;white-space:nowrap}.depth-btn.svelte-bd2lb6:hover{background:var(--color-surface-raised);color:var(--color-text-primary)}.depth-label.svelte-bd2lb6{font-weight:500;color:var(--color-text-muted)}.depth-value.svelte-bd2lb6{font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-accent)}.divider.svelte-bd2lb6{width:1px;height:16px;background:var(--color-border);flex-shrink:0}.depth-dropup.svelte-bd2lb6{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 4px 16px #0000001f;padding:4px;display:flex;flex-direction:column;gap:2px;min-width:60px}.depth-option.svelte-bd2lb6{display:flex;align-items:center;justify-content:center;padding:5px 12px;border-radius:6px;font-size:.8rem;font-weight:600;color:var(--color-text-secondary);transition:background .15s,color .15s;font-variant-numeric:tabular-nums}.depth-option.svelte-bd2lb6:hover{background:var(--color-surface-raised);color:var(--color-text-primary)}.depth-option.active.svelte-bd2lb6{background:var(--color-accent);color:#fff}.depth-option.active.svelte-bd2lb6:hover{background:var(--color-accent-hover)}.shell.svelte-12qhfyh{display:flex;flex-direction:row;height:100vh;overflow:hidden;background:var(--color-bg)}.centre-col.svelte-12qhfyh{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:var(--color-surface);position:relative}
