.sidebar[data-v-f8ebe0b9]{width:var(--sidebar-w);min-width:var(--sidebar-w);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 94%,transparent),color-mix(in srgb,var(--surface) 88%,transparent));border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.sidebar-close[data-v-f8ebe0b9]{display:none;margin-left:auto;width:34px;height:34px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;align-items:center;justify-content:center}.sidebar-close svg[data-v-f8ebe0b9]{width:16px;height:16px}.sidebar-logo[data-v-f8ebe0b9]{padding:22px 20px 18px;border-bottom:1px solid var(--border-soft);display:flex;align-items:center;gap:10px}.logo-mark[data-v-f8ebe0b9]{width:32px;height:32px;background:var(--accent);border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-mark svg[data-v-f8ebe0b9]{width:16px;height:16px;fill:#fff}.logo-text[data-v-f8ebe0b9]{font-family:var(--font-display);font-size:15px;font-weight:600;letter-spacing:-.2px}.logo-sub[data-v-f8ebe0b9]{font-size:10px;color:var(--text-muted);font-weight:400;letter-spacing:.5px;text-transform:uppercase}.sidebar-nav[data-v-f8ebe0b9]{flex:1;overflow-y:auto;padding:12px 0}.nav-section-label[data-v-f8ebe0b9]{font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted);padding:8px 20px 4px}.nav-item[data-v-f8ebe0b9]{display:flex;align-items:center;gap:10px;padding:9px 16px;margin:1px 8px;border-radius:var(--radius-sm);cursor:pointer;font-size:13.5px;font-weight:400;color:var(--text-secondary);transition:background var(--transition),color var(--transition);-webkit-user-select:none;user-select:none;text-decoration:none}.nav-item[data-v-f8ebe0b9]:hover{background:var(--surface-2);color:var(--text-primary)}.nav-item.active[data-v-f8ebe0b9]{background:var(--accent-light);color:var(--accent);font-weight:500}.nav-item svg[data-v-f8ebe0b9]{width:16px;height:16px;flex-shrink:0;opacity:.7}.nav-item.active svg[data-v-f8ebe0b9]{opacity:1}.nav-copy[data-v-f8ebe0b9]{flex:1}.nav-badge[data-v-f8ebe0b9]{margin-left:auto;min-width:22px;height:20px;border-radius:999px;padding:0 7px;background:var(--danger);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;line-height:1}.courses-header[data-v-f8ebe0b9]{display:flex;align-items:center;justify-content:space-between;padding:9px 16px;margin:1px 8px;border-radius:var(--radius-sm);cursor:pointer;font-size:13.5px;font-weight:500;color:var(--text-primary);transition:background var(--transition);-webkit-user-select:none;user-select:none}.courses-header[data-v-f8ebe0b9]:hover{background:var(--surface-2)}.courses-header-left[data-v-f8ebe0b9]{display:flex;align-items:center;gap:10px}.chevron[data-v-f8ebe0b9]{width:16px;height:16px;color:var(--text-muted);transition:transform var(--transition)}.chevron.open[data-v-f8ebe0b9]{transform:rotate(90deg)}.courses-list[data-v-f8ebe0b9]{overflow:hidden;transition:max-height .2s ease}.courses-list.expanded[data-v-f8ebe0b9]{max-height:500px}.courses-list.collapsed[data-v-f8ebe0b9]{max-height:0}.course-item[data-v-f8ebe0b9],.add-course-btn[data-v-f8ebe0b9],.project-item[data-v-f8ebe0b9]{display:flex;align-items:center;gap:10px;margin:4px 16px 4px 36px;padding:8px 10px;border-radius:12px;color:var(--text-secondary);text-decoration:none;font-size:13px;border:0;background:transparent;cursor:pointer}.course-item[data-v-f8ebe0b9]:hover,.add-course-btn[data-v-f8ebe0b9]:hover,.project-item[data-v-f8ebe0b9]:hover{background:var(--surface-2)}.course-item.active[data-v-f8ebe0b9],.project-item.active[data-v-f8ebe0b9]{color:var(--accent);background:var(--accent-light)}.course-dot[data-v-f8ebe0b9],.project-dot[data-v-f8ebe0b9]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.project-copy[data-v-f8ebe0b9]{display:flex;flex-direction:column;gap:1px;min-width:0}.project-copy span[data-v-f8ebe0b9]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-copy small[data-v-f8ebe0b9]{color:var(--text-muted);font-size:11px}.project-list[data-v-f8ebe0b9]{display:grid;overflow:hidden;transition:max-height .2s ease}.project-list.expanded[data-v-f8ebe0b9]{max-height:520px}.project-list.collapsed[data-v-f8ebe0b9]{max-height:0}.sidebar-profile[data-v-f8ebe0b9]{padding:16px;border-top:1px solid var(--border-soft);display:flex;align-items:center;gap:10px}.avatar[data-v-f8ebe0b9]{width:38px;height:38px;border-radius:12px;background:var(--accent-light);color:var(--accent);display:grid;place-items:center;font-weight:700;flex-shrink:0}.profile-info[data-v-f8ebe0b9]{min-width:0}.profile-name[data-v-f8ebe0b9]{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-role[data-v-f8ebe0b9]{font-size:11px;color:var(--text-muted)}.logout-btn[data-v-f8ebe0b9]{margin-left:auto;width:34px;height:34px;border-radius:10px;border:1px solid var(--border);background:transparent;cursor:pointer;display:grid;place-items:center}.logout-btn[data-v-f8ebe0b9]:hover{background:var(--surface-2)}.logout-btn svg[data-v-f8ebe0b9]{width:16px;height:16px;color:var(--text-secondary)}.project-form[data-v-f8ebe0b9]{display:block}.textarea-input[data-v-f8ebe0b9]{resize:vertical}.color-row[data-v-f8ebe0b9]{display:flex;gap:8px;flex-wrap:wrap}.color-btn[data-v-f8ebe0b9]{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer}.color-btn.active[data-v-f8ebe0b9]{border-color:var(--text-primary)}.sidebar-mobile-actions[data-v-f8ebe0b9]{display:none}@media (max-width: 980px){.sidebar[data-v-f8ebe0b9]{position:fixed;inset:0 auto 0 0;height:100dvh;max-width:min(86vw,320px);transform:translate(-100%);transition:transform var(--transition);z-index:30;box-shadow:none}.sidebar.open[data-v-f8ebe0b9]{transform:translate(0);box-shadow:var(--shadow-lg)}.sidebar-close[data-v-f8ebe0b9]{display:inline-flex}.sidebar-logo[data-v-f8ebe0b9]{padding-top:18px}.sidebar-nav[data-v-f8ebe0b9],.sidebar-profile[data-v-f8ebe0b9]{display:none}.sidebar-mobile-actions[data-v-f8ebe0b9]{display:grid;gap:10px;padding:16px;margin-top:6px;border-top:1px solid var(--border-soft)}.mobile-action[data-v-f8ebe0b9]{width:100%;min-height:46px;border-radius:14px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 76%,transparent);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font-size:13px;font-weight:600;cursor:pointer}.mobile-action svg[data-v-f8ebe0b9]{width:18px;height:18px}.ai-action[data-v-f8ebe0b9]{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 22%,transparent)}.logout-action[data-v-f8ebe0b9]{color:var(--text-secondary)}}.header[data-v-a888739f]{height:var(--header-h);min-height:var(--header-h);background:color-mix(in srgb,var(--surface) 88%,transparent);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header-left[data-v-a888739f]{min-width:0;display:flex;align-items:center;gap:12px}.breadcrumbs[data-v-a888739f]{display:flex;align-items:center;gap:6px;font-size:13px;min-width:0;overflow:hidden}.breadcrumb-item[data-v-a888739f]{color:var(--text-muted);cursor:pointer;transition:color var(--transition);text-decoration:none;white-space:nowrap}.breadcrumb-item[data-v-a888739f]:hover{color:var(--accent)}.breadcrumb-sep[data-v-a888739f]{color:var(--border)}.breadcrumb-current[data-v-a888739f]{color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-right[data-v-a888739f]{display:flex;align-items:center;gap:10px}.header-btn[data-v-a888739f]{width:34px;height:34px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition);position:relative}.header-btn[data-v-a888739f]:hover{background:var(--surface-2)}.header-btn svg[data-v-a888739f]{width:16px;height:16px;color:var(--text-secondary)}.mobile-only[data-v-a888739f],.mobile-brand[data-v-a888739f]{display:none}@media (max-width: 980px){.header[data-v-a888739f]{padding:0 16px}.mobile-only[data-v-a888739f]{display:inline-flex;flex-shrink:0}.breadcrumbs[data-v-a888739f]{gap:4px;font-size:12px}.breadcrumb-sep[data-v-a888739f],.breadcrumb-item[data-v-a888739f]:first-child{display:none}}@media (max-width: 640px){.header[data-v-a888739f]{gap:10px;height:78px;min-height:78px;padding:12px 14px 8px;border-bottom:0;background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 92%,transparent),color-mix(in srgb,var(--bg) 72%,transparent));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.breadcrumbs[data-v-a888739f]{display:none}.mobile-brand[data-v-a888739f]{min-width:0;display:flex;align-items:center;gap:10px;color:var(--text-primary);text-decoration:none}.mobile-logo[data-v-a888739f]{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--accent),#8ea5ff);box-shadow:0 10px 28px color-mix(in srgb,var(--accent) 24%,transparent)}.mobile-logo-icon[data-v-a888739f]{width:21px;height:21px}.mobile-brand strong[data-v-a888739f],.mobile-brand small[data-v-a888739f]{display:block;line-height:1.1}.mobile-brand strong[data-v-a888739f]{font-family:var(--font-display);font-size:18px}.mobile-brand small[data-v-a888739f]{margin-top:3px;color:var(--text-muted);font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.header-right[data-v-a888739f]{gap:8px}.header-btn[data-v-a888739f]{width:40px;height:40px;border-radius:14px;background:color-mix(in srgb,var(--surface) 70%,transparent);box-shadow:0 12px 30px #0a101c14}.header-btn svg[data-v-a888739f]{width:18px;height:18px}}.mobile-tabbar[data-v-1ef613cc]{display:none}@media (max-width: 760px){.mobile-tabbar[data-v-1ef613cc]{position:fixed;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));z-index:45;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;min-height:70px;padding:8px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:26px;background:color-mix(in srgb,var(--surface) 82%,transparent);box-shadow:0 18px 50px #0a101c33;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.tab-link[data-v-1ef613cc]{position:relative;min-width:0;display:grid;place-items:center;gap:3px;padding:7px 2px;border-radius:18px;color:var(--text-muted);text-decoration:none;font-size:11px;line-height:1.1;transition:color var(--transition),background var(--transition),transform var(--transition)}.tab-link.active[data-v-1ef613cc]{color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);transform:translateY(-1px)}.tab-link[data-v-1ef613cc]{border:0;background:transparent;cursor:pointer}.tab-icon-wrap[data-v-1ef613cc]{position:relative;display:grid;place-items:center}.tab-link svg[data-v-1ef613cc]{width:22px;height:22px}.tab-badge[data-v-1ef613cc]{position:absolute;top:-6px;right:-9px;min-width:17px;height:17px;border-radius:999px;padding:0 5px;display:grid;place-items:center;background:var(--danger);color:#fff;font-size:10px;font-weight:800;line-height:1}.picker-backdrop[data-v-1ef613cc]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#0c10186b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;align-items:end;padding:12px}.picker-sheet[data-v-1ef613cc]{background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow-lg);overflow:hidden;max-height:70vh;display:grid;grid-template-rows:auto minmax(0,1fr)}.picker-head[data-v-1ef613cc]{padding:16px 16px 14px;border-bottom:1px solid var(--border-soft);display:flex;justify-content:space-between;gap:12px;align-items:start}.picker-kicker[data-v-1ef613cc]{font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.picker-head h3[data-v-1ef613cc]{font-family:var(--font-display);font-size:20px;line-height:1.15}.picker-close[data-v-1ef613cc]{width:36px;height:36px;border-radius:12px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);display:grid;place-items:center;cursor:pointer}.picker-close svg[data-v-1ef613cc]{width:18px;height:18px}.picker-list[data-v-1ef613cc]{overflow:auto;padding:10px;display:grid;gap:8px}.picker-actions[data-v-1ef613cc]{display:flex;gap:8px;padding:0 10px 12px;flex-wrap:wrap}.picker-action[data-v-1ef613cc]{flex:1 1 0;min-height:42px;padding:0 12px;border-radius:14px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 76%,transparent);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-size:13px;font-weight:600}.picker-action svg[data-v-1ef613cc]{width:16px;height:16px}.picker-action.primary[data-v-1ef613cc]{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 24%,transparent)}.picker-create[data-v-1ef613cc]{max-height:82vh}.picker-form[data-v-1ef613cc]{display:grid;gap:12px;padding:12px 16px 16px;overflow:auto}.color-row[data-v-1ef613cc]{display:flex;gap:8px;flex-wrap:wrap}.color-btn[data-v-1ef613cc]{width:26px;height:26px;border-radius:50%;border:2px solid transparent;cursor:pointer}.color-btn.active[data-v-1ef613cc]{border-color:var(--text-primary);transform:scale(1.08)}.picker-item[data-v-1ef613cc]{display:grid;grid-template-columns:10px minmax(0,1fr);gap:10px;align-items:center;padding:12px;border-radius:18px;text-decoration:none;color:var(--text-primary);background:color-mix(in srgb,var(--surface-2) 72%,transparent)}.picker-item[data-v-1ef613cc]:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface-2))}.picker-dot[data-v-1ef613cc]{width:10px;height:10px;border-radius:50%}.picker-copy[data-v-1ef613cc]{min-width:0}.picker-copy strong[data-v-1ef613cc],.picker-copy .picker-meta[data-v-1ef613cc]{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.picker-copy .picker-meta[data-v-1ef613cc]{color:var(--text-muted);font-size:12.5px;line-height:1.25;margin-top:3px}.picker-empty[data-v-1ef613cc]{padding:16px;text-align:center;color:var(--text-muted)}.sheet-fade-enter-active[data-v-1ef613cc],.sheet-fade-leave-active[data-v-1ef613cc]{transition:opacity .18s ease}.sheet-fade-enter-from[data-v-1ef613cc],.sheet-fade-leave-to[data-v-1ef613cc]{opacity:0}}.layout-backdrop[data-v-6569cc0e]{position:fixed;top:0;right:0;bottom:0;left:0;border:0;background:#1a17146b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:24}.main[data-v-6569cc0e]{flex:1;display:flex;flex-direction:column;overflow:hidden}.content[data-v-6569cc0e]{flex:1;overflow-y:auto;padding:28px;background:var(--bg)}@media (min-width: 981px){.layout-backdrop[data-v-6569cc0e]{display:none}}@media (max-width: 980px){.content[data-v-6569cc0e]{padding:20px 16px 24px}}@media (max-width: 760px){.main[data-v-6569cc0e]{width:100%}.content[data-v-6569cc0e]{padding:18px 14px 106px;scroll-padding-bottom:108px}}.color-options[data-v-55a96ffc]{display:flex;gap:8px;flex-wrap:wrap}.color-opt[data-v-55a96ffc]{width:26px;height:26px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:border-color var(--transition),transform var(--transition)}.color-opt.selected[data-v-55a96ffc],.color-opt[data-v-55a96ffc]:hover{border-color:var(--text-primary);transform:scale(1.15)}.chat-fab[data-v-77bd4491]{position:fixed;right:24px;bottom:24px;z-index:90;width:56px;height:56px;border-radius:16px;background:var(--chat-fab-bg);color:var(--chat-fab-fg);border:1px solid var(--chat-fab-border);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-lg);transition:transform var(--transition),box-shadow var(--transition)}.chat-fab[data-v-77bd4491]:hover{transform:translateY(-2px)}.chat-fab svg[data-v-77bd4491]{width:22px;height:22px}.chat-panel[data-v-77bd4491]{position:fixed;right:24px;bottom:92px;z-index:90;width:360px;height:560px;background:var(--surface);border:1px solid var(--border);border-radius:22px;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-lg)}.chat-panel-header[data-v-77bd4491]{padding:16px;border-bottom:1px solid var(--border-soft);display:flex;align-items:center;gap:10px;background:var(--chat-header-bg)}.assistant-avatar[data-v-77bd4491],.msg-avatar[data-v-77bd4491]{display:flex;align-items:center;justify-content:center;flex-shrink:0}.assistant-avatar[data-v-77bd4491]{width:38px;height:38px;border-radius:12px;background:var(--accent-light);color:var(--accent)}.assistant-avatar svg[data-v-77bd4491]{width:18px;height:18px}.chat-ai-name[data-v-77bd4491]{font-size:14px;font-weight:700}.chat-ai-status[data-v-77bd4491]{font-size:11px;color:var(--success)}.chat-ai-status.error[data-v-77bd4491]{color:var(--danger)}.chat-close-btn[data-v-77bd4491]{margin-left:auto;width:28px;height:28px;border-radius:8px;border:1px solid var(--border);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center}.chat-close-btn[data-v-77bd4491]:hover{background:var(--surface-2)}.chat-close-btn svg[data-v-77bd4491]{width:14px;height:14px}.chat-messages[data-v-77bd4491]{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.msg[data-v-77bd4491]{display:flex;gap:8px;align-items:flex-end}.msg.user[data-v-77bd4491]{flex-direction:row-reverse}.msg-bubble[data-v-77bd4491]{max-width:82%;padding:11px 13px;border-radius:16px;font-size:13px;line-height:1.6}.msg.assistant .msg-bubble[data-v-77bd4491]{background:var(--surface-2);border-bottom-left-radius:6px}.msg.user .msg-bubble[data-v-77bd4491]{background:var(--accent);color:#fff;border-bottom-right-radius:6px}.msg-avatar[data-v-77bd4491]{width:28px;height:28px;border-radius:10px;font-size:11px;font-weight:700}.ai-av[data-v-77bd4491]{background:var(--accent-light);color:var(--accent)}.user-av[data-v-77bd4491]{background:color-mix(in srgb,var(--accent) 16%,var(--surface));color:var(--accent);border:1px solid var(--border)}.msg-avatar svg[data-v-77bd4491]{width:14px;height:14px}.msg-time[data-v-77bd4491]{font-size:10px;color:var(--text-muted);margin-top:3px;text-align:right}.typing-bubble[data-v-77bd4491]{background:var(--surface-2);border-radius:16px 16px 16px 6px;padding:12px 16px}.error-bubble[data-v-77bd4491]{background:var(--danger-bg);color:var(--danger);border-radius:12px;padding:10px 14px;font-size:12.5px;display:flex;flex-direction:column;gap:4px}.error-hint[data-v-77bd4491]{font-size:11px;color:var(--text-muted)}.chat-suggestions[data-v-77bd4491]{padding:0 14px 12px;display:flex;gap:8px;flex-wrap:wrap}.suggestion-chip[data-v-77bd4491]{font-size:11px;padding:5px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);cursor:pointer;color:var(--text-secondary);font-family:var(--font-body)}.suggestion-chip[data-v-77bd4491]:hover{background:var(--accent-light);color:var(--accent);border-color:var(--accent-mid)}.chat-input-wrap[data-v-77bd4491]{padding:12px 14px;border-top:1px solid var(--border-soft);display:flex;gap:8px;align-items:flex-end}.chat-input[data-v-77bd4491]{flex:1;border:1px solid var(--border);border-radius:14px;padding:10px 12px;font-size:13px;resize:none;outline:none;font-family:var(--font-body);background:var(--bg);min-height:60px;max-height:84px;line-height:1.5}.chat-input[data-v-77bd4491]:focus{border-color:var(--accent);background:var(--surface)}.chat-send-btn[data-v-77bd4491]{width:40px;height:40px;border-radius:12px;flex-shrink:0;background:var(--accent);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.chat-send-btn[data-v-77bd4491]:hover{background:#2e42c4}.chat-send-btn svg[data-v-77bd4491]{width:16px;height:16px}.chat-send-btn[data-v-77bd4491]:disabled{opacity:.45;cursor:not-allowed}.chat-slide-enter-active[data-v-77bd4491],.chat-slide-leave-active[data-v-77bd4491]{transition:all .25s cubic-bezier(.4,0,.2,1)}.chat-slide-enter-from[data-v-77bd4491],.chat-slide-leave-to[data-v-77bd4491]{opacity:0;transform:translateY(14px) scale(.98)}.icon-swap-enter-active[data-v-77bd4491],.icon-swap-leave-active[data-v-77bd4491]{transition:all .15s ease}.icon-swap-enter-from[data-v-77bd4491],.icon-swap-leave-to[data-v-77bd4491]{opacity:0;transform:scale(.7) rotate(25deg)}@media (max-width: 760px){.chat-fab[data-v-77bd4491]{display:none}.chat-panel[data-v-77bd4491]{left:12px;right:12px;bottom:92px;width:auto;height:min(72vh,600px)}}.boot-screen[data-v-4fd06488]{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 10%,transparent) 0%,transparent 28%),linear-gradient(180deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 84%,black) 100%)}.boot-card[data-v-4fd06488]{width:min(420px,calc(100vw - 32px));background:color-mix(in srgb,var(--surface) 86%,transparent);border:1px solid var(--border);border-radius:28px;padding:32px;box-shadow:var(--shadow-lg);text-align:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.boot-logo[data-v-4fd06488]{width:58px;height:58px;border-radius:18px;margin:0 auto 16px;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:700;letter-spacing:.08em}.boot-title[data-v-4fd06488]{font-family:var(--font-display);font-size:24px;font-weight:700;margin-bottom:8px}.boot-sub[data-v-4fd06488]{color:var(--text-muted)}.toast[data-v-4fd06488]{position:fixed;bottom:90px;left:50%;transform:translate(-50%);background:color-mix(in srgb,var(--text-primary) 92%,transparent);color:var(--surface);padding:10px 18px;border-radius:10px;font-size:13px;z-index:200;white-space:nowrap;box-shadow:var(--shadow-lg)}.stats-row[data-v-58d2309e]{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.stat-card[data-v-58d2309e]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.stat-value[data-v-58d2309e]{font-family:var(--font-display);font-size:28px;font-weight:700;line-height:1;margin-bottom:4px}.stat-label[data-v-58d2309e]{font-size:11.5px;color:var(--text-muted);font-weight:500;letter-spacing:.3px;text-transform:uppercase}.stat-sub[data-v-58d2309e]{font-size:12px;color:var(--text-muted);margin-top:6px}@media (max-width: 1150px){.stats-row[data-v-58d2309e]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 760px){.stats-row[data-v-58d2309e]{gap:12px;margin-bottom:14px}.stat-card[data-v-58d2309e]{min-height:118px;padding:15px;border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 90%,transparent),color-mix(in srgb,var(--surface-2) 72%,transparent))}.stat-value[data-v-58d2309e]{font-size:31px}.stat-label[data-v-58d2309e]{font-size:10.5px;line-height:1.35}}.calendar-widget[data-v-8f70338e]{margin-bottom:18px;padding:18px}.widget-head[data-v-8f70338e]{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.widget-sub[data-v-8f70338e]{font-size:12.5px;color:var(--text-muted);margin-top:4px}.cal-nav[data-v-8f70338e]{display:flex;align-items:center;gap:8px}.cal-month[data-v-8f70338e]{min-width:130px;text-align:center;font-family:var(--font-display);font-size:16px;font-weight:600}.cal-nav-btn[data-v-8f70338e]{width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:var(--surface);cursor:pointer;display:flex;align-items:center;justify-content:center}.cal-nav-btn[data-v-8f70338e]:hover{background:var(--surface-2)}.cal-nav-btn svg[data-v-8f70338e]{width:16px;height:16px}.calendar-layout[data-v-8f70338e]{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:18px}.calendar-shell[data-v-8f70338e]{padding:14px;border:1px solid var(--border-soft);border-radius:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--surface-2) 88%,transparent))}.cal-days-header[data-v-8f70338e],.cal-grid[data-v-8f70338e]{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.cal-days-header[data-v-8f70338e]{margin-bottom:8px}.cal-day-name[data-v-8f70338e]{text-align:center;font-size:10px;font-weight:700;text-transform:uppercase;color:var(--text-muted)}.cal-cell[data-v-8f70338e]{position:relative;min-height:40px;border:1px solid transparent;border-radius:12px;background:transparent;cursor:pointer;padding:6px 4px 4px;transition:transform var(--transition),border-color var(--transition),background var(--transition)}.cal-cell[data-v-8f70338e]:hover{border-color:var(--border);background:var(--surface-2)}.cal-cell.other-month[data-v-8f70338e]{opacity:.35}.cal-cell.today[data-v-8f70338e]{border-color:var(--accent-mid);background:var(--accent-light)}.cal-cell.selected[data-v-8f70338e]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.cell-number[data-v-8f70338e]{display:block;text-align:center;font-size:12px;font-weight:600}.cell-dots[data-v-8f70338e]{display:flex;justify-content:center;gap:4px;margin-top:5px}.cell-dot[data-v-8f70338e]{width:6px;height:6px;border-radius:50%}.cell-count[data-v-8f70338e]{position:absolute;top:4px;right:6px;font-size:9px;color:var(--text-muted)}.calendar-side[data-v-8f70338e]{display:flex;flex-direction:column;gap:12px}.side-block[data-v-8f70338e]{border:1px solid var(--border-soft);border-radius:14px;padding:14px;background:var(--surface)}.side-title[data-v-8f70338e]{font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.selected-label[data-v-8f70338e]{font-family:var(--font-display);font-size:18px;margin-bottom:12px;text-transform:capitalize}.assignment-stack[data-v-8f70338e]{display:flex;flex-direction:column;gap:10px}.assignment-card[data-v-8f70338e],.upcoming-item[data-v-8f70338e]{width:100%;text-align:left;border:1px solid var(--border-soft);border-radius:12px;background:var(--surface);padding:11px 12px;cursor:pointer}.assignment-card[data-v-8f70338e]:hover,.upcoming-item[data-v-8f70338e]:hover{background:var(--surface-2)}.assignment-topline[data-v-8f70338e]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.assignment-course-pill[data-v-8f70338e]{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:600}.assignment-name[data-v-8f70338e]{font-size:13px;font-weight:600;margin-bottom:4px}.assignment-desc[data-v-8f70338e],.empty-date[data-v-8f70338e],.upcoming-date[data-v-8f70338e],.upcoming-name[data-v-8f70338e],.detail-label[data-v-8f70338e],.detail-value[data-v-8f70338e]{color:var(--text-secondary)}.assignment-desc[data-v-8f70338e],.empty-date[data-v-8f70338e]{font-size:12px;line-height:1.5}.upcoming-list[data-v-8f70338e]{display:flex;flex-direction:column;gap:8px}.upcoming-item[data-v-8f70338e]{display:flex;flex-direction:column;gap:2px}.upcoming-date[data-v-8f70338e]{font-size:11px}.upcoming-name[data-v-8f70338e]{font-size:13px;font-weight:600;color:var(--text-primary)}.detail-row[data-v-8f70338e]{margin-bottom:16px}.detail-label[data-v-8f70338e]{font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;margin-bottom:4px}.detail-title[data-v-8f70338e]{font-size:16px;font-weight:600;color:var(--text-primary)}@media (max-width: 1080px){.calendar-layout[data-v-8f70338e]{grid-template-columns:1fr}}@media (max-width: 760px){.calendar-widget[data-v-8f70338e]{padding:16px}.widget-head[data-v-8f70338e]{align-items:center;margin-bottom:14px}.widget-sub[data-v-8f70338e]{display:none}.cal-month[data-v-8f70338e]{min-width:86px;font-size:14px}.calendar-shell[data-v-8f70338e],.side-block[data-v-8f70338e]{border-radius:18px}.calendar-shell[data-v-8f70338e]{padding:12px}.cal-days-header[data-v-8f70338e],.cal-grid[data-v-8f70338e]{gap:5px}.cal-cell[data-v-8f70338e]{min-height:44px;border-radius:12px}.calendar-side[data-v-8f70338e]{gap:10px}}.mini-link[data-v-99acb6ca]{padding:5px 10px;font-size:12px;text-decoration:none}.events-list[data-v-99acb6ca]{display:flex;flex-direction:column;gap:10px}.event-row[data-v-99acb6ca]{display:flex;gap:12px;align-items:flex-start}.event-time[data-v-99acb6ca]{font-size:11px;color:var(--text-muted);width:44px;flex-shrink:0;margin-top:2px;font-weight:600}.event-body[data-v-99acb6ca]{flex:1;padding:10px 12px;border-radius:10px;border-left:3px solid}.event-title[data-v-99acb6ca]{font-size:13px;font-weight:600}.event-location[data-v-99acb6ca],.event-teacher[data-v-99acb6ca]{font-size:11.5px;color:var(--text-muted);margin-top:2px}.empty-state[data-v-99acb6ca]{padding:10px 0 2px;color:var(--text-muted);line-height:1.6}@media (max-width: 760px){.event-row[data-v-99acb6ca]{gap:10px}.event-time[data-v-99acb6ca]{width:48px;font-size:12px}.event-body[data-v-99acb6ca]{border-radius:14px;padding:12px 14px}}.ai-rec-card[data-v-49e45f6d]{position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--accent-mid) 56%,var(--border));box-shadow:0 18px 45px #1f1a1414,0 4px 14px #3559d814}.ai-rec-card[data-v-49e45f6d]:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--accent),var(--success),var(--warning))}.ai-rec-header[data-v-49e45f6d]{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.ai-rec-title-row[data-v-49e45f6d]{display:flex;align-items:flex-start;gap:12px}.ai-rec-icon[data-v-49e45f6d]{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:12px;color:var(--accent);background:linear-gradient(145deg,var(--accent-light),color-mix(in srgb,var(--surface) 88%,transparent));border:1px solid var(--accent-mid);box-shadow:0 10px 20px color-mix(in srgb,var(--accent) 12%,transparent)}.ai-rec-icon svg[data-v-49e45f6d]{width:20px;height:20px}.ai-rec-kicker[data-v-49e45f6d]{display:flex;align-items:center;gap:7px;margin-bottom:3px;color:var(--text-muted);font-size:11px;font-weight:700;text-transform:uppercase}.ai-rec-badge[data-v-49e45f6d],.ai-status-chip[data-v-49e45f6d],.ai-state-pill[data-v-49e45f6d]{display:inline-flex;align-items:center;border-radius:999px;white-space:nowrap}.ai-rec-badge[data-v-49e45f6d]{padding:2px 7px;color:var(--accent);background:var(--accent-light);border:1px solid var(--accent-mid)}.ai-rec-copy h3[data-v-49e45f6d]{margin:0;font-family:var(--font-display);font-size:19px;line-height:1.2;font-weight:600}.ai-rec-copy p[data-v-49e45f6d]{margin-top:5px;color:var(--text-secondary);font-size:13px;line-height:1.45}.ai-rec-actions[data-v-49e45f6d]{display:flex;justify-content:flex-end;flex-shrink:0}.ai-rec-chips[data-v-49e45f6d]{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}.ai-status-chip[data-v-49e45f6d]{min-height:24px;padding:4px 9px;font-size:11.5px;font-weight:700;border:1px solid transparent}.chip-priority[data-v-49e45f6d]{color:var(--danger);background:var(--danger-bg);border-color:color-mix(in srgb,var(--danger) 22%,transparent)}.chip-today[data-v-49e45f6d]{color:var(--warning);background:var(--warning-bg);border-color:color-mix(in srgb,var(--warning) 22%,transparent)}.chip-course[data-v-49e45f6d]{color:var(--accent);background:var(--accent-light);border-color:var(--accent-mid)}.chip-project[data-v-49e45f6d]{color:var(--success);background:var(--success-bg);border-color:color-mix(in srgb,var(--success) 22%,transparent)}.chip-ai[data-v-49e45f6d]{color:var(--text-primary);background:color-mix(in srgb,var(--surface-2) 78%,transparent);border-color:var(--border-soft)}.ai-sections[data-v-49e45f6d]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ai-section[data-v-49e45f6d]{background:color-mix(in srgb,var(--surface) 86%,transparent);border:1px solid var(--border-soft);border-radius:14px;padding:14px;box-shadow:0 8px 22px #1f1a140a}.ai-section[data-v-49e45f6d]:first-child{grid-column:1 / -1}.ai-section-head[data-v-49e45f6d]{display:flex;gap:10px;align-items:flex-start;padding-bottom:10px;margin-bottom:9px;border-bottom:1px solid var(--border-soft)}.ai-section-icon[data-v-49e45f6d]{width:26px;height:26px;flex:0 0 26px;display:grid;place-items:center;border-radius:8px;color:var(--accent);background:var(--accent-light);font-size:11px;font-weight:800}.ai-section-title[data-v-49e45f6d]{color:var(--text-primary);font-size:13px;font-weight:800}.ai-section-sub[data-v-49e45f6d]{margin-top:1px;color:var(--text-muted);font-size:11.5px;line-height:1.35}.ai-section-list[data-v-49e45f6d]{display:flex;flex-direction:column;gap:8px;list-style:none}.ai-section-list li[data-v-49e45f6d]{display:grid;grid-template-columns:10px minmax(0,1fr);gap:8px;color:var(--text-secondary);font-size:13px;line-height:1.5}.ai-list-marker[data-v-49e45f6d]{width:6px;height:6px;margin-top:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.ai-state[data-v-49e45f6d]{display:flex;align-items:center;justify-content:center;gap:12px;min-height:150px;padding:22px;border:1px dashed var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface-2) 48%,transparent)}.ai-loading[data-v-49e45f6d]{flex-direction:column}.ai-state-pill[data-v-49e45f6d]{gap:7px;padding:5px 11px;color:var(--accent);background:var(--accent-light);border:1px solid var(--accent-mid);font-size:12px;font-weight:700}.assistant-dot[data-v-49e45f6d]{width:7px;height:7px;border-radius:50%;background:var(--accent)}.ai-error[data-v-49e45f6d]{justify-content:flex-start;border-style:solid;border-color:color-mix(in srgb,var(--danger) 30%,var(--border));background:color-mix(in srgb,var(--danger-bg) 72%,transparent)}.ai-empty[data-v-49e45f6d]{justify-content:flex-start}.ai-state-icon[data-v-49e45f6d]{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:10px;color:var(--accent);background:var(--accent-light);font-weight:800}.ai-error .ai-state-icon[data-v-49e45f6d]{color:var(--danger);background:var(--danger-bg)}.ai-state-icon svg[data-v-49e45f6d]{width:18px;height:18px}.ai-state-title[data-v-49e45f6d]{color:var(--text-primary);font-size:14px;font-weight:800}.ai-state-text[data-v-49e45f6d]{margin-top:3px;color:var(--text-secondary);font-size:13px;line-height:1.45}.compact .ai-sections[data-v-49e45f6d]{grid-template-columns:1fr}.compact .ai-section[data-v-49e45f6d]:first-child{grid-column:auto}@media (max-width: 760px){.ai-rec-header[data-v-49e45f6d]{flex-direction:column}.ai-rec-actions[data-v-49e45f6d]{width:100%;justify-content:flex-start}.ai-sections[data-v-49e45f6d]{grid-template-columns:1fr}.ai-section[data-v-49e45f6d]:first-child{grid-column:auto}}.ai-workspace-card[data-v-eb788aee]{margin-top:0}.ai-refresh[data-v-eb788aee]{flex-shrink:0}.ai-refresh[data-v-eb788aee]:disabled{opacity:.7;cursor:wait}.page-title[data-v-53aead57]{font-family:var(--font-display);font-size:26px;font-weight:600;margin-bottom:6px;letter-spacing:-.5px}.page-sub[data-v-53aead57]{color:var(--text-muted);font-size:13.5px;margin-bottom:24px}.dashboard-grid[data-v-53aead57]{display:grid;grid-template-columns:minmax(0,1.4fr) 360px;gap:20px}.dashboard-side[data-v-53aead57],.dashboard-main[data-v-53aead57]{display:flex;flex-direction:column;gap:18px}@media (max-width: 1100px){.dashboard-grid[data-v-53aead57]{grid-template-columns:1fr}}@media (max-width: 760px){.page-title[data-v-53aead57]{font-size:30px;line-height:1.12;margin-top:4px}.page-sub[data-v-53aead57]{margin-bottom:18px}.dashboard-grid[data-v-53aead57],.dashboard-main[data-v-53aead57],.dashboard-side[data-v-53aead57]{gap:14px}}.course-hero[data-v-6f91faf3]{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.course-icon[data-v-6f91faf3]{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.course-hero-info[data-v-6f91faf3]{flex:1;min-width:200px}.course-hero-name[data-v-6f91faf3]{font-family:var(--font-display);font-size:22px;font-weight:600;margin-bottom:3px;letter-spacing:-.3px}.course-hero-meta[data-v-6f91faf3]{font-size:13px;color:var(--text-muted)}.course-hero-badges[data-v-6f91faf3]{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.badge[data-v-6f91faf3]{font-size:11.5px;font-weight:500;padding:3px 10px;border-radius:99px;border:1px solid var(--border);color:var(--text-secondary);background:var(--surface-2)}.badge-active[data-v-6f91faf3]{background:var(--success-bg);color:var(--success);border-color:transparent}.course-actions[data-v-6f91faf3]{display:flex;gap:8px;flex-shrink:0}.btn-sm[data-v-6f91faf3]{padding:5px 10px;font-size:12px}.btn-danger-text[data-v-6f91faf3]:hover{color:var(--danger);border-color:var(--danger)}.course-progress[data-v-6f91faf3]{text-align:right}.course-progress-label[data-v-6f91faf3]{font-size:11px;color:var(--text-muted);margin-bottom:4px}.course-progress-value[data-v-6f91faf3]{font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--accent)}@media (max-width: 760px){.course-hero[data-v-6f91faf3]{align-items:flex-start;gap:14px;padding:18px;border-radius:24px;position:relative}.course-icon[data-v-6f91faf3]{width:64px;height:64px;border-radius:18px;font-size:28px}.course-hero-info[data-v-6f91faf3]{min-width:0}.course-hero-name[data-v-6f91faf3]{font-size:28px;line-height:1.1}.course-actions[data-v-6f91faf3]{width:100%;order:4;display:grid;grid-template-columns:1fr 1fr}.course-progress[data-v-6f91faf3]{width:100%;text-align:left;order:3;padding-top:12px;border-top:1px solid var(--border-soft)}.course-progress-value[data-v-6f91faf3]{float:right;margin-top:-28px;font-size:30px}.course-progress .progress-bar[data-v-6f91faf3]{width:100%!important;margin-left:0!important;margin-top:12px;height:6px}}.files-header[data-v-64fe6d82]{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.files-count[data-v-64fe6d82]{font-size:14px;font-weight:600}.upload-label[data-v-64fe6d82]{cursor:pointer;position:relative}.file-input[data-v-64fe6d82]{position:absolute;opacity:0;width:0;height:0}.empty-state[data-v-64fe6d82]{text-align:center;padding:48px 20px;color:var(--text-muted)}.empty-icon[data-v-64fe6d82]{font-size:36px;margin-bottom:10px}.empty-state p[data-v-64fe6d82]{font-size:13.5px;line-height:1.6}.file-row[data-v-64fe6d82]{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--border-soft);background:var(--surface);margin-bottom:8px;transition:border-color var(--transition),box-shadow var(--transition)}.file-row[data-v-64fe6d82]:hover{border-color:var(--accent-mid);box-shadow:var(--shadow)}.file-icon[data-v-64fe6d82]{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.file-info[data-v-64fe6d82]{flex:1;min-width:0}.file-name[data-v-64fe6d82]{font-size:13.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-meta[data-v-64fe6d82]{font-size:11.5px;color:var(--text-muted)}.file-actions[data-v-64fe6d82]{display:flex;gap:6px}.action-btn[data-v-64fe6d82]{width:30px;height:30px;border-radius:6px;border:1px solid var(--border);background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition);text-decoration:none;color:var(--text-muted)}.action-btn[data-v-64fe6d82]:hover{background:var(--surface-2);color:var(--accent);border-color:var(--accent-mid)}.action-btn svg[data-v-64fe6d82]{width:14px;height:14px}.action-btn-danger[data-v-64fe6d82]:hover{color:var(--danger);border-color:var(--danger);background:var(--danger-bg)}@media (max-width: 760px){.files-header[data-v-64fe6d82]{gap:12px}.upload-label[data-v-64fe6d82]{padding-inline:12px}.file-row[data-v-64fe6d82]{padding:14px;border-radius:18px}.file-icon[data-v-64fe6d82]{width:50px;height:50px;border-radius:16px;font-size:22px}.action-btn[data-v-64fe6d82]{width:38px;height:38px;border-radius:13px}}.tab-header[data-v-08a57e63]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.tab-count[data-v-08a57e63]{font-size:14px;font-weight:600}.empty-state[data-v-08a57e63]{text-align:center;padding:48px 20px;color:var(--text-muted)}.empty-icon[data-v-08a57e63]{font-size:36px;margin-bottom:10px}.empty-state p[data-v-08a57e63]{font-size:13.5px}.assignments-grid[data-v-08a57e63]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.assignment-card[data-v-08a57e63]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;transition:box-shadow var(--transition);cursor:pointer}.assignment-card[data-v-08a57e63]:hover{box-shadow:var(--shadow)}.ac-top[data-v-08a57e63]{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.ac-title[data-v-08a57e63]{font-size:13.5px;font-weight:600;line-height:1.4}.ac-desc[data-v-08a57e63]{font-size:12.5px;color:var(--text-secondary);margin-bottom:12px;line-height:1.55}.ac-file-count[data-v-08a57e63]{font-size:11px;color:var(--accent);display:flex;align-items:center;gap:3px;margin-left:auto}.ac-ai-saved[data-v-08a57e63]{font-size:11px;color:#1a7a32;background:#e8f5e9;border-radius:6px;padding:4px 8px;margin-bottom:8px;display:inline-block}.ac-footer[data-v-08a57e63]{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.ac-deadline[data-v-08a57e63]{font-size:11.5px;color:var(--text-muted);display:flex;align-items:center;gap:3px}.status-select[data-v-08a57e63]{font-size:11px;border:1px solid var(--border);border-radius:4px;padding:2px 4px;background:var(--bg);font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;outline:none}@media (max-width: 760px){.tab-header[data-v-08a57e63]{gap:12px}.tab-header .btn[data-v-08a57e63]{width:46px;min-width:46px;padding:0;overflow:hidden;color:transparent;gap:0;justify-content:center}.mobile-plus-btn svg[data-v-08a57e63]{display:block}.mobile-plus-label[data-v-08a57e63]{display:none}.tab-header .btn svg[data-v-08a57e63]{color:#fff}.assignment-card[data-v-08a57e63]{border-radius:20px}.assignments-grid[data-v-08a57e63]{grid-template-columns:1fr;display:grid}.ac-top[data-v-08a57e63]{display:grid}}.ai-plan-header[data-v-7be75035]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.ai-plan-title[data-v-7be75035]{font-family:var(--font-display);font-size:18px;font-weight:600}.ai-plan-sub[data-v-7be75035]{font-size:12.5px;color:var(--text-muted);margin-top:3px}.gen-btn[data-v-7be75035]{display:flex;align-items:center;gap:8px;padding:9px 18px;border-radius:var(--radius-sm);border:none;background:var(--accent);color:#fff;font-size:13px;font-weight:500;cursor:pointer;font-family:var(--font-body)}.gen-btn[data-v-7be75035]:hover{background:#2e42c4}.gen-btn.loading[data-v-7be75035]{opacity:.7;cursor:wait}.context-wrap[data-v-7be75035]{margin-bottom:16px}.context-input[data-v-7be75035]{resize:vertical;min-height:60px}.empty-state[data-v-7be75035]{text-align:center;padding:48px 20px;color:var(--text-muted)}.empty-icon[data-v-7be75035]{font-size:40px;margin-bottom:12px}.compact-action[data-v-7be75035]{padding:7px 11px;font-size:12px}@media (max-width: 680px){.ai-plan-header[data-v-7be75035]{flex-direction:column}.gen-btn[data-v-7be75035]{width:100%;justify-content:center}}.modal-overlay[data-v-c6663fd8]{z-index:200}.file-icon[data-v-c6663fd8]{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px}.file-meta-row[data-v-c6663fd8]{display:flex;gap:16px;margin-bottom:16px;font-size:12.5px;color:var(--text-muted)}.file-preview[data-v-c6663fd8]{font-size:13px;line-height:1.8;color:var(--text-secondary);white-space:pre-wrap;font-family:Courier New,monospace;background:var(--bg);border-radius:8px;padding:16px;border:1px solid var(--border-soft);max-height:60vh;overflow:auto}.preview-loading[data-v-c6663fd8]{text-align:center;padding:32px;color:var(--text-muted);font-size:13px}.preview-error[data-v-c6663fd8]{text-align:center;padding:32px;color:var(--danger);font-size:13px}.pdf-viewer[data-v-c6663fd8]{width:100%;height:75vh;border:none;border-radius:8px}.image-viewer[data-v-c6663fd8]{max-width:100%;max-height:70vh;display:block;margin:0 auto;border-radius:8px}.docx-preview[data-v-c6663fd8]{font-size:14px;line-height:1.7;color:var(--text-primary);padding:16px 20px;max-height:60vh;overflow:auto}.docx-preview[data-v-c6663fd8] h1{font-size:1.5em;margin:.6em 0 .3em}.docx-preview[data-v-c6663fd8] h2{font-size:1.3em;margin:.5em 0 .2em}.docx-preview[data-v-c6663fd8] h3{font-size:1.15em;margin:.4em 0 .2em}.docx-preview[data-v-c6663fd8] p{margin:.4em 0}.docx-preview[data-v-c6663fd8] ul,.docx-preview[data-v-c6663fd8] ol{padding-left:1.5em;margin:.4em 0}.docx-preview[data-v-c6663fd8] table{border-collapse:collapse;width:100%;margin:.5em 0}.docx-preview[data-v-c6663fd8] td,.docx-preview[data-v-c6663fd8] th{border:1px solid var(--border);padding:6px 10px}.docx-preview[data-v-c6663fd8] img{max-width:100%;height:auto}.noPad[data-v-c6663fd8]{padding:0}.modal.wide[data-v-c6663fd8]{width:min(960px,100%)}.drop-zone[data-v-a6a7676a]{border:2px dashed var(--border);border-radius:12px;padding:40px;text-align:center;cursor:pointer;transition:border-color var(--transition),background var(--transition)}.drop-zone[data-v-a6a7676a]:hover{border-color:var(--accent);background:var(--accent-light)}.drop-icon[data-v-a6a7676a]{font-size:32px;margin-bottom:12px}.drop-title[data-v-a6a7676a]{font-size:14px;font-weight:500;margin-bottom:6px}.drop-sub[data-v-a6a7676a]{font-size:12px;color:var(--text-muted)}.ai-help-modal[data-v-e401d41c]{max-width:600px;max-height:85vh}.ai-icon[data-v-e401d41c]{margin-right:8px}.assignment-info[data-v-e401d41c]{background:var(--surface-2);border-radius:var(--radius-sm);padding:14px;margin-bottom:16px}.assignment-info-title[data-v-e401d41c]{font-weight:600;font-size:14px;margin-bottom:6px}.assignment-info-desc[data-v-e401d41c]{font-size:13px;color:var(--text-secondary);margin-bottom:8px;line-height:1.5}.assignment-info-meta[data-v-e401d41c]{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text-muted)}.question-section[data-v-e401d41c]{margin-bottom:16px}.question-input[data-v-e401d41c]{resize:vertical;min-height:60px}.initial-state[data-v-e401d41c]{text-align:center;padding:30px 20px;color:var(--text-muted)}.initial-icon[data-v-e401d41c]{font-size:36px;margin-bottom:12px}.initial-note[data-v-e401d41c]{margin-top:6px}.ai-btn svg[data-v-e401d41c]{margin-right:2px}.compact-action[data-v-e401d41c]{padding:7px 11px;font-size:12px}.modal.wide[data-v-751d718c]{width:min(680px,100%)}.detail-meta[data-v-751d718c]{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.meta-deadline[data-v-751d718c]{font-size:12px;color:var(--text-muted);display:flex;align-items:center;gap:4px}.detail-desc[data-v-751d718c]{font-size:13px;line-height:1.6;color:var(--text-secondary);margin-bottom:16px;white-space:pre-wrap}.ac-ai-saved[data-v-751d718c]{font-size:11px;color:#1a7a32;background:#e8f5e9;border-radius:6px;padding:4px 8px;margin-bottom:12px;display:inline-block}.files-section[data-v-751d718c]{margin-top:16px;border-top:1px solid var(--border-soft);padding-top:14px}.files-header[data-v-751d718c]{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.files-title[data-v-751d718c]{font-size:13px;font-weight:600}.files-empty[data-v-751d718c]{font-size:12.5px;color:var(--text-muted);padding:12px 0}.files-list[data-v-751d718c]{display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto}.file-row[data-v-751d718c]{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-soft);background:var(--bg)}.file-icon[data-v-751d718c]{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0}.file-info[data-v-751d718c]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-link[data-v-751d718c]{background:none;border:none;cursor:pointer;padding:0;font-size:12.5px;font-weight:500;color:var(--accent);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-body)}.file-link[data-v-751d718c]:hover{text-decoration:underline}.file-size[data-v-751d718c]{font-size:11px;color:var(--text-muted)}.file-actions[data-v-751d718c]{display:flex;gap:4px}.upload-btn[data-v-751d718c]{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:var(--radius-sm);border:1px solid var(--accent-mid);background:var(--accent-light);font-size:11.5px;font-weight:500;cursor:pointer;transition:all var(--transition);font-family:var(--font-body);color:var(--accent);text-decoration:none}.upload-btn[data-v-751d718c]:hover{background:var(--accent);color:#fff}.upload-btn svg[data-v-751d718c]{width:12px;height:12px}.file-hidden-input[data-v-751d718c]{display:none}.form-row[data-v-751d718c]{display:flex;gap:12px}.form-group[data-v-751d718c]{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.form-label[data-v-751d718c]{font-size:12px;font-weight:500;color:var(--text-secondary)}.form-input[data-v-751d718c]{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 10px;font-size:13px;background:var(--bg);color:var(--text-primary);font-family:var(--font-body);outline:none;transition:border-color var(--transition)}.form-input[data-v-751d718c]:focus{border-color:var(--accent)}textarea.form-input[data-v-751d718c]{resize:vertical}.file-upload-area[data-v-751d718c]{display:flex;flex-direction:column;gap:6px}.file-pick-label[data-v-751d718c]{display:flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:12.5px;color:var(--text-secondary);background:var(--bg);transition:border-color var(--transition);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-pick-label[data-v-751d718c]:hover{border-color:var(--accent);color:var(--accent)}.file-input[data-v-751d718c]{display:none}.file-chips[data-v-751d718c]{display:flex;flex-wrap:wrap;gap:4px}.file-chip[data-v-751d718c]{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:2px 8px;border-radius:4px;background:var(--accent-light);color:var(--accent);border:1px solid var(--accent-mid)}.file-chip-remove[data-v-751d718c]{background:none;border:none;cursor:pointer;font-size:13px;color:var(--accent);padding:0;line-height:1}.ac-btn[data-v-751d718c]{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;font-size:11.5px;font-weight:500;cursor:pointer;transition:all var(--transition);font-family:var(--font-body);color:var(--text-muted)}.ac-btn[data-v-751d718c]:hover{background:var(--surface-2);color:var(--text-primary)}.ac-btn svg[data-v-751d718c]{width:12px;height:12px}.ac-btn-ai[data-v-751d718c]{border-color:var(--accent-mid);color:var(--accent);background:var(--accent-light)}.ac-btn-ai[data-v-751d718c]:hover{background:var(--accent);color:#fff}.ac-btn-del[data-v-751d718c]:hover{color:var(--danger);border-color:var(--danger);background:var(--danger-bg)}.modal-footer[data-v-751d718c]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-top:1px solid var(--border-soft)}.footer-left[data-v-751d718c]{display:flex;gap:6px}@media (max-width: 760px){.form-row[data-v-751d718c]{flex-direction:column;gap:0}.footer-left[data-v-751d718c]{display:grid;grid-template-columns:1fr 1fr;width:100%}.modal-footer[data-v-751d718c]{flex-direction:column;gap:8px}.modal-footer>button[data-v-751d718c]:last-child{width:100%}}.tabs[data-v-b5cb9f5c]{display:flex;gap:2px;background:var(--surface-2);border-radius:var(--radius-sm);padding:3px;margin-bottom:20px}.tab[data-v-b5cb9f5c]{flex:1;text-align:center;padding:8px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background var(--transition),color var(--transition);color:var(--text-muted);border:none;background:transparent;font-family:var(--font-body)}.tab.active[data-v-b5cb9f5c]{background:var(--surface);color:var(--text-primary);box-shadow:0 1px 3px #1a171414}.tab[data-v-b5cb9f5c]:hover:not(.active){color:var(--text-secondary)}.not-found[data-v-b5cb9f5c]{display:flex;flex-direction:column;align-items:center;padding:80px 20px;text-align:center;color:var(--text-muted)}.not-found-icon[data-v-b5cb9f5c]{font-size:48px;margin-bottom:12px}.not-found-title[data-v-b5cb9f5c]{font-size:16px;font-weight:500}.edit-course-form[data-v-b5cb9f5c]{margin-bottom:20px;padding:18px;border:1.5px solid var(--accent-mid)}.edit-title[data-v-b5cb9f5c]{font-weight:600;font-size:14px;margin-bottom:14px;color:var(--accent)}.form-row[data-v-b5cb9f5c]{display:flex;gap:12px;margin-bottom:12px}.form-actions[data-v-b5cb9f5c]{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.color-options[data-v-b5cb9f5c]{display:flex;gap:8px;flex-wrap:wrap}.color-opt[data-v-b5cb9f5c]{width:24px;height:24px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:border-color var(--transition),transform var(--transition)}.color-opt.selected[data-v-b5cb9f5c],.color-opt[data-v-b5cb9f5c]:hover{border-color:var(--text-primary);transform:scale(1.15)}.form-slide-enter-active[data-v-b5cb9f5c],.form-slide-leave-active[data-v-b5cb9f5c]{transition:all .25s ease}.form-slide-enter-from[data-v-b5cb9f5c],.form-slide-leave-to[data-v-b5cb9f5c]{opacity:0;transform:translateY(-10px)}@media (max-width: 760px){.tabs[data-v-b5cb9f5c]{position:sticky;top:0;z-index:5;gap:4px;margin:0 -2px 16px;padding:5px;border-radius:20px;background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.tab[data-v-b5cb9f5c]{min-height:50px;padding:8px 6px;border-radius:15px;font-size:12px;line-height:1.25}.edit-course-form[data-v-b5cb9f5c]{border-radius:22px}.form-row[data-v-b5cb9f5c]{flex-direction:column;gap:0}.form-actions[data-v-b5cb9f5c]{display:grid;grid-template-columns:1fr}}.page-header[data-v-be0b4779]{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:20px}.page-title[data-v-be0b4779]{font-family:var(--font-display);font-size:24px;font-weight:600;margin-bottom:4px}.page-sub[data-v-be0b4779]{color:var(--text-muted);font-size:13.5px}.week-selector[data-v-be0b4779]{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:20px}.week-nav[data-v-be0b4779]{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--surface);cursor:pointer;display:flex;align-items:center;justify-content:center}.week-nav[data-v-be0b4779]:hover{background:var(--surface-2);border-color:var(--accent)}.week-nav svg[data-v-be0b4779]{width:18px;height:18px}.week-label[data-v-be0b4779]{font-size:15px;font-weight:600;min-width:220px;text-align:center}.schedule-grid[data-v-be0b4779]{display:flex;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.time-column[data-v-be0b4779]{width:68px;flex-shrink:0;background:var(--surface-2)}.time-header[data-v-be0b4779]{height:54px;border-bottom:1px solid var(--border)}.time-slot[data-v-be0b4779]{height:60px;display:flex;align-items:flex-start;justify-content:center;padding-top:4px;font-size:11px;color:var(--text-muted);border-bottom:1px solid var(--border-soft)}.day-column[data-v-be0b4779]{flex:1;min-width:120px;background:var(--surface)}.day-header[data-v-be0b4779]{height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:1px solid var(--border)}.day-header.today[data-v-be0b4779]{background:var(--accent-light)}.day-header.today .day-name[data-v-be0b4779]{color:var(--accent)}.day-name[data-v-be0b4779]{font-size:12px;font-weight:600}.day-date[data-v-be0b4779]{font-size:11px;color:var(--text-muted)}.day-slots[data-v-be0b4779]{position:relative;height:780px}.hour-slot[data-v-be0b4779]{height:30px;border-bottom:1px solid var(--border-soft);cursor:pointer;transition:background var(--transition)}.hour-slot[data-v-be0b4779]:hover{background:var(--surface-2)}.schedule-event[data-v-be0b4779]{position:absolute;border-radius:10px;border-left:4px solid;padding:8px 10px;overflow:hidden;cursor:pointer;box-shadow:0 3px 12px #1a171414;transition:transform var(--transition),box-shadow var(--transition)}.schedule-event[data-v-be0b4779]:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.event-title[data-v-be0b4779]{font-size:11px;font-weight:700;line-height:1.35;margin-bottom:2px}.event-time[data-v-be0b4779],.event-teacher[data-v-be0b4779],.event-location[data-v-be0b4779]{font-size:10px;color:var(--text-muted)}.event-teacher[data-v-be0b4779],.event-location[data-v-be0b4779]{margin-top:2px}.form-row[data-v-be0b4779]{display:flex;gap:12px}.color-options[data-v-be0b4779]{display:flex;gap:8px;flex-wrap:wrap}.color-opt[data-v-be0b4779]{width:26px;height:26px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:border-color var(--transition),transform var(--transition)}.color-opt.selected[data-v-be0b4779],.color-opt[data-v-be0b4779]:hover{border-color:var(--text-primary);transform:scale(1.1)}.btn-danger[data-v-be0b4779]{color:var(--danger)}.btn-danger[data-v-be0b4779]:hover{background:var(--danger-bg)}@media (max-width: 1200px){.schedule-grid[data-v-be0b4779]{overflow-x:auto}.day-column[data-v-be0b4779]{min-width:150px}}@media (max-width: 760px){.page-header[data-v-be0b4779]{align-items:center;margin-bottom:16px}.page-title[data-v-be0b4779]{font-size:30px;line-height:1.1}.page-sub[data-v-be0b4779]{display:none}.page-header .btn[data-v-be0b4779]{width:46px;min-width:46px;padding:0;overflow:hidden;color:transparent;gap:0}.page-header .btn svg[data-v-be0b4779]{width:20px!important;height:20px!important;color:#fff}.week-selector[data-v-be0b4779]{justify-content:space-between;gap:10px;margin-bottom:14px}.week-label[data-v-be0b4779]{min-width:0;flex:1;font-size:14px}.week-nav[data-v-be0b4779]{width:42px;height:42px;border-radius:14px;background:color-mix(in srgb,var(--surface) 88%,transparent)}.schedule-grid[data-v-be0b4779]{display:grid;gap:12px;overflow:visible;background:transparent;border:0;border-radius:0}.time-column[data-v-be0b4779]{display:none}.day-column[data-v-be0b4779]{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:20px;background:color-mix(in srgb,var(--surface) 86%,transparent);box-shadow:0 12px 30px #0a101c12}.day-header[data-v-be0b4779]{height:auto;min-height:62px;align-items:flex-start;padding:14px 16px;background:transparent}.day-header.today[data-v-be0b4779]{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 17%,transparent),transparent)}.day-name[data-v-be0b4779]{font-family:var(--font-display);font-size:18px;line-height:1.2}.day-date[data-v-be0b4779]{font-size:12px}.day-slots[data-v-be0b4779]{height:auto;display:grid;gap:10px;padding:0 14px 14px}.hour-slot[data-v-be0b4779]{display:none}.schedule-event[data-v-be0b4779]{position:static;width:100%!important;min-height:74px;height:auto!important;border-left-width:4px;border-radius:16px;padding:13px 14px;box-shadow:none}.event-title[data-v-be0b4779]{font-size:15px}.event-time[data-v-be0b4779],.event-teacher[data-v-be0b4779],.event-location[data-v-be0b4779]{font-size:12px}.form-row[data-v-be0b4779]{flex-direction:column;gap:0}}.welcome-shell[data-v-34995700]{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) 460px;gap:28px;width:100%;max-width:1240px;padding:28px;margin:0 auto;align-items:center;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 18%,transparent),transparent 34%),linear-gradient(180deg,color-mix(in srgb,var(--bg) 90%,var(--surface)),color-mix(in srgb,var(--bg) 96%,var(--surface-2)))}.hero-badge[data-v-34995700]{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:color-mix(in srgb,var(--surface) 82%,transparent);border:1px solid var(--border-soft);color:var(--accent);font-weight:600;font-size:13px;margin-bottom:18px}.welcome-hero[data-v-34995700],.auth-card[data-v-34995700]{background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-soft);border-radius:30px;box-shadow:var(--shadow-lg)}.welcome-hero[data-v-34995700]{padding:46px;display:flex;flex-direction:column;justify-content:center}.welcome-hero h1[data-v-34995700]{font-family:var(--font-display);font-size:clamp(36px,4vw,56px);line-height:1.02;margin:0 0 18px;letter-spacing:-.05em}.welcome-hero>p[data-v-34995700]{max-width:640px;color:var(--text-secondary);font-size:17px;line-height:1.7;margin-bottom:30px}.hero-points[data-v-34995700]{display:grid;gap:16px}.point-card[data-v-34995700]{display:grid;grid-template-columns:46px 1fr;gap:14px;align-items:start;padding:18px;border-radius:22px;background:color-mix(in srgb,var(--surface-2) 84%,transparent);border:1px solid var(--border-soft)}.point-card span[data-v-34995700]{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--surface);font-size:22px}.point-card strong[data-v-34995700]{display:block;margin-bottom:6px}.point-card p[data-v-34995700]{margin:0;color:var(--text-muted);line-height:1.6}.auth-card[data-v-34995700]{padding:18px;display:flex;flex-direction:column;justify-content:center;justify-self:center;width:100%;max-width:460px}.auth-tabs[data-v-34995700]{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.auth-tab[data-v-34995700]{height:46px;border:1px solid var(--border);border-radius:14px;background:transparent;font-weight:600;cursor:pointer}.auth-tab.active[data-v-34995700]{background:color-mix(in srgb,var(--surface-2) 92%,transparent);color:var(--text-primary);border-color:var(--border)}.auth-form[data-v-34995700]{display:flex;flex-direction:column;gap:14px;padding:18px}.auth-form h2[data-v-34995700]{font-family:var(--font-display);font-size:30px;margin:2px 0 0}.auth-sub[data-v-34995700]{color:var(--text-muted);line-height:1.6;margin:0 0 6px}label[data-v-34995700]{display:flex;flex-direction:column;gap:8px}label span[data-v-34995700]{font-size:13px;font-weight:600;color:var(--text-secondary)}input[data-v-34995700]{height:50px;border-radius:14px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--text-primary);padding:0 14px;font-size:14px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}input[data-v-34995700]::placeholder{color:var(--text-muted)}input[data-v-34995700]:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent)}.auth-submit[data-v-34995700]{height:52px;border:0;border-radius:16px;background:var(--accent);color:#fff;font-size:15px;font-weight:700;cursor:pointer;margin-top:4px}.auth-submit[data-v-34995700]:disabled{opacity:.7;cursor:wait}.auth-error[data-v-34995700]{border-radius:14px;background:var(--danger-bg);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);color:var(--danger);padding:12px 14px;font-size:13px}.auth-hint[data-v-34995700]{border-radius:14px;background:color-mix(in srgb,var(--surface-2) 88%,transparent);color:var(--text-secondary);font-size:12.5px;line-height:1.6;padding:12px 14px}@media (max-width: 1100px){.welcome-shell[data-v-34995700]{grid-template-columns:1fr;align-content:start}.welcome-hero[data-v-34995700]{padding:28px}}@media (max-width: 760px){.welcome-shell[data-v-34995700]{min-height:100dvh;padding:14px;gap:14px;align-content:start;justify-content:start}.auth-card[data-v-34995700]{order:-1;max-width:none;padding:14px;border-radius:22px}.auth-tabs[data-v-34995700]{margin-bottom:12px}.auth-tab[data-v-34995700]{height:42px;border-radius:12px;font-size:13px}.auth-form[data-v-34995700]{padding:8px 4px 4px;gap:12px}.auth-form h2[data-v-34995700]{font-size:22px}.auth-sub[data-v-34995700]{font-size:13px}.welcome-hero[data-v-34995700]{padding:22px;border-radius:24px}.welcome-hero h1[data-v-34995700]{font-size:28px;line-height:1.08;letter-spacing:-.04em}.welcome-hero>p[data-v-34995700]{font-size:14px;line-height:1.55;margin-bottom:18px}.hero-badge[data-v-34995700]{font-size:12px;margin-bottom:14px}.hero-points[data-v-34995700]{gap:10px}.point-card[data-v-34995700]{grid-template-columns:38px 1fr;gap:10px;padding:14px;border-radius:18px}.point-card span[data-v-34995700]{width:38px;height:38px;border-radius:12px;font-size:18px}.point-card strong[data-v-34995700]{font-size:14px}.point-card p[data-v-34995700]{font-size:12.5px;line-height:1.5}input[data-v-34995700]{height:46px;border-radius:12px}.auth-submit[data-v-34995700]{height:48px;border-radius:14px}}html[data-theme=dark] .auth-tab.active[data-v-34995700]{background:color-mix(in srgb,var(--surface-2) 82%,#000 18%);border-color:color-mix(in srgb,var(--border) 80%,#000 20%)}.ai-project-card[data-v-950391f4]{min-height:220px}.ai-refresh[data-v-950391f4]{flex-shrink:0}.ai-refresh[data-v-950391f4]:disabled{opacity:.7;cursor:wait}.state-card[data-v-f12006c6]{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:24px;text-align:center}.state-card.compact[data-v-f12006c6]{padding:16px;font-size:14px}.state-card.error[data-v-f12006c6]{color:var(--danger)}.project-page[data-v-f12006c6]{display:grid;gap:18px}.project-hero[data-v-f12006c6]{display:block}.hero-copy[data-v-f12006c6]{background:linear-gradient(135deg,color-mix(in srgb,var(--project-color) 16%,var(--surface)) 0%,var(--surface) 62%,color-mix(in srgb,var(--project-color) 10%,var(--surface)) 100%);border:1px solid var(--border);border-radius:28px;padding:28px;position:relative}.hero-badge[data-v-f12006c6]{display:inline-flex;padding:7px 12px;border-radius:999px;background:color-mix(in srgb,var(--surface) 90%,transparent);color:var(--project-color);font-size:12px;font-weight:700;margin-bottom:14px}.hero-copy h1[data-v-f12006c6]{font-family:var(--font-display);font-size:34px;margin-bottom:10px}.hero-copy p[data-v-f12006c6]{color:var(--text-secondary);max-width:760px}.hero-stats[data-v-f12006c6],.hero-inline-metrics[data-v-f12006c6],.task-kpis[data-v-f12006c6],.detail-grid[data-v-f12006c6],.row-2[data-v-f12006c6]{display:grid;gap:12px}.hero-stats[data-v-f12006c6]{grid-template-columns:repeat(3,1fr);margin-top:22px}.hero-stats strong[data-v-f12006c6]{display:block;font-size:18px;font-weight:600;line-height:1.25}.hero-stats span[data-v-f12006c6],.metric-label[data-v-f12006c6],.section-sub[data-v-f12006c6]{color:var(--text-muted);font-size:12px}.hero-inline-metrics[data-v-f12006c6]{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.metric-pill[data-v-f12006c6]{padding:14px 16px;border-radius:18px;background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--border-soft);display:grid;gap:4px}.metric-pill.soft[data-v-f12006c6]{background:color-mix(in srgb,var(--project-color) 12%,var(--surface))}.hero-edit-btn[data-v-f12006c6]{position:absolute;top:18px;right:18px;padding:7px 12px;font-size:12px;border-radius:10px}.card-title[data-v-f12006c6]{font-weight:700}.input[data-v-f12006c6],.textarea[data-v-f12006c6],select.input[data-v-f12006c6],.composer-input[data-v-f12006c6]{width:100%;border:1px solid var(--border);border-radius:14px;padding:12px 14px;font:inherit;background:var(--surface)}.input[data-v-f12006c6]:focus,.textarea[data-v-f12006c6]:focus,select.input[data-v-f12006c6]:focus,.composer-input[data-v-f12006c6]:focus{outline:none;border-color:var(--accent-mid);box-shadow:0 0 0 3px #3d52d514}.textarea[data-v-f12006c6],.composer-input[data-v-f12006c6]{resize:vertical}.form-group[data-v-f12006c6]{display:grid;gap:8px}.form-label[data-v-f12006c6]{font-size:12px;color:var(--text-muted)}.color-row[data-v-f12006c6]{display:flex;gap:10px;flex-wrap:wrap}.color-btn[data-v-f12006c6]{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer}.color-btn.active[data-v-f12006c6]{border-color:var(--text-primary);transform:scale(1.08)}.settings-actions[data-v-f12006c6],.detail-actions[data-v-f12006c6],.compose-actions[data-v-f12006c6],.file-actions[data-v-f12006c6]{display:flex;justify-content:space-between;align-items:center;gap:10px}.btn-danger-outline[data-v-f12006c6]{border:1px solid color-mix(in srgb,var(--danger) 45%,white);color:var(--danger);background:var(--surface)}.btn-danger-outline[data-v-f12006c6]:hover{background:color-mix(in srgb,var(--danger) 10%,white)}.tabs[data-v-f12006c6]{display:flex;gap:3px;background:var(--surface-2);border-radius:16px;padding:4px}.tab[data-v-f12006c6]{flex:1;border:none;background:transparent;border-radius:12px;padding:11px 14px;cursor:pointer;font:inherit;color:var(--text-muted)}.tab.active[data-v-f12006c6]{background:var(--surface);color:var(--text-primary);box-shadow:0 6px 18px #1a171414}.tasks-shell[data-v-f12006c6]{display:block}.wide-btn[data-v-f12006c6]{width:100%;justify-content:center}.tasks-main[data-v-f12006c6]{display:grid;gap:16px}.task-toolbar[data-v-f12006c6],.task-detail[data-v-f12006c6],.chat-shell[data-v-f12006c6]{border-radius:24px}.toolbar-main[data-v-f12006c6]{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,520px);gap:14px;align-items:center}.toolbar-controls[data-v-f12006c6]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.smart-filters[data-v-f12006c6]{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.filter-chip[data-v-f12006c6]{border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);border-radius:999px;padding:8px 12px;font:inherit;cursor:pointer}.filter-chip.active[data-v-f12006c6]{background:var(--accent-light);border-color:transparent;color:var(--accent)}.task-kpis[data-v-f12006c6]{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.kpi-box[data-v-f12006c6]{background:var(--surface-2);border-radius:18px;padding:12px 14px}.kpi-box.success[data-v-f12006c6]{background:color-mix(in srgb,var(--success) 16%,var(--surface))}.kpi-box strong[data-v-f12006c6]{display:block;font-size:24px}.kpi-box span[data-v-f12006c6]{color:var(--text-muted);font-size:12px}.tasks-workbench[data-v-f12006c6]{display:block}.kanban-board[data-v-f12006c6]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.task-lane[data-v-f12006c6]{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:22px;padding:14px;display:grid;gap:12px;min-height:520px}.lane-head[data-v-f12006c6]{display:flex;justify-content:space-between;gap:12px;align-items:start}.lane-head h3[data-v-f12006c6]{font-size:16px;margin-bottom:4px}.lane-head p[data-v-f12006c6]{color:var(--text-muted);font-size:12px}.lane-count[data-v-f12006c6]{min-width:32px;height:32px;border-radius:12px;background:var(--surface);display:grid;place-items:center;font-weight:700}.lane-body[data-v-f12006c6]{display:grid;gap:12px;align-content:start}.lane-empty[data-v-f12006c6]{padding:18px 14px;border:1px dashed var(--border);border-radius:18px;color:var(--text-muted);text-align:center;font-size:13px}.task-tile[data-v-f12006c6]{width:100%;text-align:left;border:1px solid transparent;background:var(--surface);border-radius:20px;padding:16px;display:grid;gap:12px;cursor:pointer;box-shadow:0 8px 24px #1a17140f}.task-tile.selected[data-v-f12006c6]{border-color:var(--project-color);box-shadow:0 16px 32px #7c3aed29}.task-tile.overdue[data-v-f12006c6]{border-color:#dc26263d}.task-tile.done[data-v-f12006c6]{opacity:.86}.tile-top[data-v-f12006c6],.tile-meta[data-v-f12006c6],.comment-head[data-v-f12006c6],.detail-head[data-v-f12006c6],.chat-topbar[data-v-f12006c6],.chat-status-pack[data-v-f12006c6]{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.check-pill[data-v-f12006c6],.tile-deadline[data-v-f12006c6],.status-chip[data-v-f12006c6],.meta-chip[data-v-f12006c6],.connection-pill[data-v-f12006c6],.presence-pill[data-v-f12006c6]{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:600}.check-pill[data-v-f12006c6]{border:1px solid var(--border);background:var(--surface-2);color:var(--text-secondary);text-align:center;line-height:1.3;white-space:normal}.check-pill.active[data-v-f12006c6]{background:color-mix(in srgb,#16a34a 14%,white);color:#15803d;border-color:transparent}.tile-deadline.normal[data-v-f12006c6],.meta-chip[data-v-f12006c6],.presence-pill[data-v-f12006c6]{background:var(--surface-2);color:var(--text-secondary)}.tile-deadline.warn[data-v-f12006c6]{background:color-mix(in srgb,#f59e0b 18%,white);color:#b45309}.tile-deadline.danger[data-v-f12006c6]{background:color-mix(in srgb,#ef4444 14%,white);color:#b91c1c}.tile-deadline.neutral[data-v-f12006c6]{background:color-mix(in srgb,#16a34a 14%,white);color:#15803d}.task-tile h4[data-v-f12006c6]{font-size:16px;line-height:1.35}.task-tile p[data-v-f12006c6]{color:var(--text-secondary);font-size:13px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.member-pill[data-v-f12006c6]{display:inline-flex;align-items:center;gap:8px;font-size:12px}.avatar-mini[data-v-f12006c6],.comment-avatar[data-v-f12006c6],.message-avatar[data-v-f12006c6],.member-avatar[data-v-f12006c6]{width:34px;height:34px;border-radius:12px;background:var(--accent-light);color:var(--accent);display:grid;place-items:center;font-size:11px;font-weight:700}.tile-side-metrics[data-v-f12006c6]{display:flex;gap:10px;color:var(--text-muted);font-size:11px}.detail-label[data-v-f12006c6]{color:var(--text-muted);font-size:12px;margin-bottom:4px}.detail-head h3[data-v-f12006c6]{font-size:24px}.detail-badges[data-v-f12006c6],.detail-section[data-v-f12006c6],.task-comments[data-v-f12006c6],.comment-compose[data-v-f12006c6]{display:grid;gap:12px}.status-chip.todo[data-v-f12006c6]{background:var(--surface-2);color:var(--text-secondary)}.status-chip.progress[data-v-f12006c6]{background:color-mix(in srgb,#3b82f6 14%,white);color:#2563eb}.status-chip.done[data-v-f12006c6]{background:color-mix(in srgb,#16a34a 14%,white);color:#15803d}.detail-grid[data-v-f12006c6]{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-grid label[data-v-f12006c6]{display:grid;gap:6px;font-size:12px;color:var(--text-muted)}.detail-actions[data-v-f12006c6]{flex-wrap:wrap}.detail-actions .btn[data-v-f12006c6]{flex:1 1 190px;justify-content:center;text-align:center}.modal-backdrop[data-v-f12006c6]{position:fixed;top:0;right:0;bottom:0;left:0;background:#12182680;display:grid;place-items:center;padding:18px;z-index:60;animation:modal-fade-in-f12006c6 .2s ease}.modal-window[data-v-f12006c6]{width:min(860px,100%);max-height:calc(100vh - 36px);overflow:auto;border-radius:24px;display:grid;gap:14px;animation:modal-window-in-f12006c6 .24s cubic-bezier(.22,1,.36,1);transform-origin:top center}.task-modal[data-v-f12006c6]{width:min(980px,100%)}@keyframes modal-fade-in-f12006c6{0%{opacity:0}to{opacity:1}}@keyframes modal-window-in-f12006c6{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.comment-card[data-v-f12006c6]{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px}.comment-body[data-v-f12006c6]{background:var(--surface-2);border-radius:18px;padding:12px 14px}.comment-meta[data-v-f12006c6]{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:6px}.comment-meta span[data-v-f12006c6]{color:var(--text-muted)}.comment-body p[data-v-f12006c6],.message-bubble p[data-v-f12006c6]{white-space:pre-wrap}.files-card[data-v-f12006c6]{display:grid;gap:14px}.files-head[data-v-f12006c6]{align-items:center}.file-row[data-v-f12006c6],.member-row[data-v-f12006c6]{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 0;border-top:1px solid var(--border-soft)}.file-row[data-v-f12006c6]:first-of-type,.member-row[data-v-f12006c6]:first-of-type{border-top:0}.file-icon[data-v-f12006c6]{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-size:20px}.file-copy strong[data-v-f12006c6],.member-copy strong[data-v-f12006c6]{display:block;margin-bottom:4px}.file-copy span[data-v-f12006c6],.member-copy span[data-v-f12006c6]{color:var(--text-muted);font-size:12px}.chat-shell[data-v-f12006c6]{display:grid;gap:14px;min-height:720px}.chat-thread[data-v-f12006c6]{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 94%,transparent),color-mix(in srgb,var(--surface-2) 94%,transparent));border:1px solid var(--border-soft);border-radius:24px;padding:18px;display:grid;gap:14px;overflow:auto;min-height:520px;max-height:65vh}.chat-empty[data-v-f12006c6]{display:grid;place-items:center;gap:6px;min-height:340px;text-align:center;color:var(--text-secondary)}.empty-illustration[data-v-f12006c6]{width:72px;height:72px;border-radius:24px;background:var(--surface);display:grid;place-items:center;font-size:30px}.message-row[data-v-f12006c6]{display:flex;gap:12px;align-items:flex-end}.message-row.self[data-v-f12006c6]{justify-content:flex-end}.message-row.self .message-stack[data-v-f12006c6]{align-items:flex-end}.message-stack[data-v-f12006c6]{max-width:min(78%,720px);display:grid;gap:6px}.message-meta[data-v-f12006c6]{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--text-muted)}.message-bubble[data-v-f12006c6]{background:var(--surface);border:1px solid var(--border-soft);border-radius:20px 20px 20px 8px;padding:14px 16px;box-shadow:0 10px 24px #1a17140d}.message-row.self .message-bubble[data-v-f12006c6]{background:color-mix(in srgb,var(--project-color) 13%,white);border-color:transparent;border-radius:20px 20px 8px}.chat-compose-modern[data-v-f12006c6]{background:var(--surface-2);border-radius:22px;padding:14px;display:grid;gap:10px}.composer-input[data-v-f12006c6]{background:var(--surface);min-height:110px;border-radius:18px}.connection-pill.online[data-v-f12006c6]{background:color-mix(in srgb,#16a34a 15%,white);color:#15803d}.connection-pill.connecting[data-v-f12006c6]{background:color-mix(in srgb,#f59e0b 18%,white);color:#b45309}.connection-pill.offline[data-v-f12006c6]{background:color-mix(in srgb,#ef4444 12%,white);color:#b91c1c}.typing-bar[data-v-f12006c6]{justify-self:start;padding:8px 12px;border-radius:999px;background:var(--surface);color:var(--text-secondary);font-size:12px;border:1px solid var(--border-soft)}.members-grid[data-v-f12006c6]{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:18px;align-items:start}.inline-row[data-v-f12006c6]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.search-results[data-v-f12006c6]{display:grid;gap:10px;margin-top:10px}.search-item[data-v-f12006c6]{width:100%;border:1px solid var(--border-soft);background:var(--surface);border-radius:14px;padding:12px 14px;display:flex;justify-content:space-between;gap:12px;cursor:pointer;text-align:left}.search-item[data-v-f12006c6]:hover{background:var(--surface-2)}.search-item strong[data-v-f12006c6]{display:block;margin-bottom:4px}.search-item span[data-v-f12006c6]{color:var(--text-muted);font-size:12px}@media (max-width: 1320px){.tasks-shell[data-v-f12006c6],.members-grid[data-v-f12006c6]{grid-template-columns:1fr}}@media (max-width: 1080px){.kanban-board[data-v-f12006c6],.detail-grid[data-v-f12006c6],.hero-stats[data-v-f12006c6],.hero-inline-metrics[data-v-f12006c6],.task-kpis[data-v-f12006c6],.toolbar-main[data-v-f12006c6],.toolbar-controls[data-v-f12006c6]{grid-template-columns:1fr}}@media (max-width: 760px){.tabs[data-v-f12006c6],.smart-filters[data-v-f12006c6],.compose-actions[data-v-f12006c6],.file-actions[data-v-f12006c6],.detail-actions[data-v-f12006c6],.settings-actions[data-v-f12006c6],.inline-row[data-v-f12006c6],.file-row[data-v-f12006c6],.member-row[data-v-f12006c6]{grid-template-columns:1fr;display:grid}.message-stack[data-v-f12006c6]{max-width:100%}}@media (max-width: 760px){.project-page[data-v-f12006c6]{gap:14px}.hero-copy[data-v-f12006c6]{border-radius:24px;padding:22px}.hero-copy h1[data-v-f12006c6]{font-size:31px;line-height:1.1}.hero-copy p[data-v-f12006c6]{font-size:13px}.hero-edit-btn[data-v-f12006c6]{position:static;width:100%;margin-bottom:12px}.hero-stats[data-v-f12006c6],.hero-inline-metrics[data-v-f12006c6],.task-kpis[data-v-f12006c6]{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-stats div[data-v-f12006c6],.metric-pill[data-v-f12006c6],.kpi-box[data-v-f12006c6]{border-radius:16px}.hero-stats strong[data-v-f12006c6]{font-size:17px}.tabs[data-v-f12006c6]{position:sticky;top:0;z-index:6;display:flex;flex-wrap:nowrap;gap:6px;padding:5px;border-radius:20px;background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity}.tabs[data-v-f12006c6]::-webkit-scrollbar{display:none}.tab[data-v-f12006c6]{flex:0 0 auto;min-height:44px;min-width:max-content;padding:8px 14px;border-radius:15px;white-space:nowrap;scroll-snap-align:start}.task-toolbar[data-v-f12006c6],.task-lane[data-v-f12006c6],.task-tile[data-v-f12006c6],.files-card[data-v-f12006c6],.chat-shell[data-v-f12006c6],.modal-window[data-v-f12006c6]{border-radius:22px}.kanban-board[data-v-f12006c6]{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}.task-lane[data-v-f12006c6]{min-width:min(86vw,340px);min-height:420px;scroll-snap-align:start}.toolbar-controls[data-v-f12006c6],.row-2[data-v-f12006c6],.detail-grid[data-v-f12006c6]{grid-template-columns:1fr}.mobile-plus-btn[data-v-f12006c6]{justify-content:center;width:100%}.mobile-plus-btn svg[data-v-f12006c6]{display:none}.mobile-plus-btn[data-v-f12006c6]:before{content:"+";font-size:16px;font-weight:700;line-height:1}.chat-shell[data-v-f12006c6]{min-height:calc(100dvh - var(--header-h) - 132px)}.chat-thread[data-v-f12006c6]{min-height:360px;max-height:52vh;border-radius:18px}.message-stack[data-v-f12006c6]{max-width:min(88%,420px)}.modal-backdrop[data-v-f12006c6]{align-items:end;padding:12px}.modal-window[data-v-f12006c6]{max-height:86vh}}.settings-page[data-v-51dfaa13]{display:grid;gap:20px}.settings-hero[data-v-51dfaa13]{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:18px;padding:26px 28px;border:1px solid var(--border);border-radius:28px;background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 12%,transparent) 0%,transparent 32%),linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,white) 0%,var(--surface) 100%);box-shadow:var(--shadow-lg)}.page-title[data-v-51dfaa13]{font-family:var(--font-display);font-size:30px;font-weight:600;margin-bottom:6px}.page-sub[data-v-51dfaa13],.card-sub[data-v-51dfaa13],.hero-pill span[data-v-51dfaa13],.theme-option small[data-v-51dfaa13]{color:var(--text-muted)}.hero-pills[data-v-51dfaa13]{display:grid;gap:12px}.hero-pill[data-v-51dfaa13]{padding:14px 16px;border-radius:20px;background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid var(--border-soft);display:grid;gap:4px}.hero-pill strong[data-v-51dfaa13]{font-size:16px}.settings-grid[data-v-51dfaa13]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-card[data-v-51dfaa13]{display:grid;gap:18px;border-radius:24px}.settings-card.full-width[data-v-51dfaa13]{grid-column:1 / -1}.card-head[data-v-51dfaa13]{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.theme-picker[data-v-51dfaa13]{display:grid;gap:12px}.theme-option[data-v-51dfaa13]{width:100%;border:1px solid var(--border);background:var(--surface-2);border-radius:20px;padding:16px;display:grid;grid-template-columns:52px minmax(0,1fr);gap:14px;text-align:left;cursor:pointer;transition:all var(--transition)}.theme-option.active[data-v-51dfaa13]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface));box-shadow:0 12px 28px color-mix(in srgb,var(--accent) 14%,transparent)}.theme-option strong[data-v-51dfaa13]{display:block;margin-bottom:4px}.theme-swatch[data-v-51dfaa13]{width:52px;height:52px;border-radius:16px;border:1px solid var(--border)}.theme-swatch.light[data-v-51dfaa13]{background:linear-gradient(180deg,#f9f7f2,#fff)}.theme-swatch.dark[data-v-51dfaa13]{background:linear-gradient(180deg,#1f2430,#10141d);border-color:#ffffff14}.settings-form[data-v-51dfaa13]{display:grid;gap:14px}.password-grid[data-v-51dfaa13]{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.form-group[data-v-51dfaa13]{display:grid;gap:8px}.form-label[data-v-51dfaa13]{font-size:12px;color:var(--text-muted)}.input[data-v-51dfaa13]{width:100%;border:1px solid var(--border);border-radius:14px;padding:12px 14px;background:var(--surface);color:var(--text-primary)}.input[data-v-51dfaa13]:focus{outline:none;border-color:var(--accent-mid);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.input[data-v-51dfaa13]:disabled{opacity:.7;cursor:not-allowed}.form-actions[data-v-51dfaa13]{display:flex;justify-content:flex-end;gap:10px;align-items:center}.full-span[data-v-51dfaa13]{grid-column:1 / -1}@media (max-width: 1100px){.settings-hero[data-v-51dfaa13],.settings-grid[data-v-51dfaa13],.password-grid[data-v-51dfaa13]{grid-template-columns:1fr}}@media (max-width: 640px){.settings-hero[data-v-51dfaa13],.settings-card[data-v-51dfaa13]{padding:18px}.form-actions[data-v-51dfaa13]{display:grid}}.chats-page[data-v-072611b8]{display:grid;grid-template-rows:auto minmax(0,1fr);gap:18px;height:calc(100dvh - var(--header-h) - 56px);min-height:640px}.chats-head[data-v-072611b8]{display:flex;justify-content:space-between;gap:18px;align-items:end}.eyebrow[data-v-072611b8]{color:var(--accent);font-size:11px;font-weight:700;text-transform:uppercase;margin-bottom:4px}.chats-head h1[data-v-072611b8]{font-family:var(--font-display);font-size:32px;line-height:1.1}.chats-head p[data-v-072611b8]{color:var(--text-muted);margin-top:5px}.connection-status[data-v-072611b8]{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:8px 12px;color:var(--text-secondary);font-weight:600;box-shadow:var(--shadow)}.connection-status span[data-v-072611b8]{width:8px;height:8px;border-radius:50%;background:var(--text-muted)}.connection-status.online span[data-v-072611b8]{background:var(--success)}.connection-status.connecting span[data-v-072611b8]{background:var(--warning)}.connection-status.offline span[data-v-072611b8]{background:var(--danger)}.messenger-shell[data-v-072611b8]{min-height:0;display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:18px}.dialog-panel[data-v-072611b8],.conversation-panel[data-v-072611b8]{min-height:0;background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.dialog-panel[data-v-072611b8]{display:flex;flex-direction:column;padding:16px;gap:14px}.search-box[data-v-072611b8]{min-height:46px;display:grid;grid-template-columns:20px minmax(0,1fr) 28px;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:16px;padding:0 10px 0 14px}.search-box svg[data-v-072611b8]{width:17px;height:17px;color:var(--text-muted)}.search-box input[data-v-072611b8]{border:0;outline:none;background:transparent;color:var(--text-primary)}.search-box button[data-v-072611b8],.ghost-icon-btn[data-v-072611b8]{border:0;background:transparent;display:grid;place-items:center;cursor:pointer;color:var(--text-muted)}.search-results[data-v-072611b8]{display:grid;gap:8px}.mini-state[data-v-072611b8],.dialog-empty[data-v-072611b8],.thread-state[data-v-072611b8]{border:1px dashed var(--border);border-radius:18px;padding:16px;color:var(--text-muted);text-align:center}.dialog-empty[data-v-072611b8]{display:grid;gap:4px}.dialog-empty strong[data-v-072611b8],.thread-state strong[data-v-072611b8]{color:var(--text-primary)}.user-result[data-v-072611b8]{width:100%;border:1px solid var(--border-soft);background:var(--surface);border-radius:18px;padding:10px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;cursor:pointer}.user-result[data-v-072611b8]:hover{background:var(--surface-2)}.result-copy[data-v-072611b8],.dialog-copy[data-v-072611b8]{min-width:0}.result-copy strong[data-v-072611b8],.result-copy span[data-v-072611b8]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-copy span[data-v-072611b8],.dialog-title span[data-v-072611b8],.dialog-preview span[data-v-072611b8],.peer-main span[data-v-072611b8],.message-meta[data-v-072611b8],.conversation-empty p[data-v-072611b8]{color:var(--text-muted);font-size:12px}.result-action[data-v-072611b8]{color:var(--accent);font-size:12px;font-weight:700}.dialogs-head[data-v-072611b8]{display:flex;justify-content:space-between;align-items:center;color:var(--text-muted);font-size:12px;font-weight:700;text-transform:uppercase}.dialogs-head strong[data-v-072611b8]{color:var(--text-primary)}.dialogs-list[data-v-072611b8]{flex:1;min-height:0;overflow:auto;display:grid;align-content:start;gap:9px;padding-right:2px}.dialog-card[data-v-072611b8]{width:100%;border:1px solid transparent;background:transparent;border-radius:20px;padding:12px;display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;align-items:center;text-align:left;cursor:pointer}.dialog-card[data-v-072611b8]:hover{background:var(--surface-2)}.dialog-card.active[data-v-072611b8]{background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:color-mix(in srgb,var(--accent) 22%,transparent)}.dialog-card.unread .dialog-title strong[data-v-072611b8],.dialog-card.unread .dialog-preview span[data-v-072611b8]{color:var(--text-primary);font-weight:700}.dialog-title[data-v-072611b8],.dialog-preview[data-v-072611b8]{display:flex;justify-content:space-between;gap:10px;align-items:center}.dialog-title strong[data-v-072611b8],.dialog-preview span[data-v-072611b8]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-preview b[data-v-072611b8]{min-width:22px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0 7px;background:var(--accent);color:#fff;font-size:11px}.avatar[data-v-072611b8]{width:42px;height:42px;border-radius:14px;background:color-mix(in srgb,var(--avatar-color) 14%,var(--surface));color:var(--avatar-color);display:grid;place-items:center;font-size:12px;font-weight:800;flex-shrink:0}.avatar.large[data-v-072611b8]{width:54px;height:54px;border-radius:18px;font-size:14px}.avatar.small[data-v-072611b8]{width:32px;height:32px;border-radius:11px;font-size:10px}.conversation-panel[data-v-072611b8]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;margin-right:clamp(72px,5vw,96px)}.conversation-panel.empty[data-v-072611b8]{display:grid;place-items:center}.conversation-top[data-v-072611b8]{padding:18px 20px;border-bottom:1px solid var(--border-soft);display:flex;justify-content:space-between;gap:12px;align-items:center}.peer-main[data-v-072611b8]{display:flex;align-items:center;gap:12px}.peer-main h2[data-v-072611b8]{font-size:18px;line-height:1.25}.ghost-icon-btn[data-v-072611b8]{width:38px;height:38px;border-radius:13px;border:1px solid var(--border);background:var(--surface)}.ghost-icon-btn[data-v-072611b8]:hover{background:var(--surface-2)}.ghost-icon-btn svg[data-v-072611b8]{width:18px;height:18px}.mobile-chat-back[data-v-072611b8]{display:none}.message-thread[data-v-072611b8]{min-height:0;overflow:auto;display:grid;gap:12px;align-content:start;padding:22px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,transparent),color-mix(in srgb,var(--surface-2) 92%,transparent))}.thread-state[data-v-072611b8]{align-self:center;justify-self:center;width:min(360px,100%);display:grid;gap:4px;margin-top:80px}.message-row[data-v-072611b8]{display:flex;gap:10px;align-items:flex-end}.message-row.self[data-v-072611b8]{justify-content:flex-end}.message-stack[data-v-072611b8]{max-width:min(68%,720px);display:grid;gap:5px}.message-row.self .message-stack[data-v-072611b8]{justify-items:end}.message-meta[data-v-072611b8]{display:flex;gap:8px;align-items:center}.message-meta strong[data-v-072611b8]{color:var(--text-secondary)}.message-bubble[data-v-072611b8]{border:1px solid var(--border-soft);background:var(--surface);border-radius:20px 20px 20px 8px;padding:12px 14px;box-shadow:0 10px 24px #1a17140d}.message-row.self .message-bubble[data-v-072611b8]{background:color-mix(in srgb,var(--accent) 14%,var(--surface));border-color:transparent;border-radius:20px 20px 8px}.message-bubble p[data-v-072611b8]{white-space:pre-wrap;word-break:break-word}.typing-pill[data-v-072611b8]{justify-self:start;border:1px solid var(--border-soft);background:var(--surface);border-radius:999px;padding:8px 12px;color:var(--text-secondary);font-size:12px}.composer[data-v-072611b8]{border-top:1px solid var(--border-soft);background:color-mix(in srgb,var(--surface) 94%,transparent);padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:10px;align-items:end}.composer textarea[data-v-072611b8]{width:100%;min-height:46px;max-height:150px;resize:vertical;border:1px solid var(--border);outline:none;border-radius:18px;padding:12px 14px;background:var(--surface-2);color:var(--text-primary)}.composer textarea[data-v-072611b8]:focus{border-color:var(--accent-mid);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent)}.send-btn[data-v-072611b8]{width:46px;height:46px;border:0;border-radius:16px;background:var(--accent);color:#fff;display:grid;place-items:center;cursor:pointer}.send-btn[data-v-072611b8]:disabled{opacity:.45;cursor:not-allowed}.send-btn svg[data-v-072611b8]{width:18px;height:18px}.conversation-empty[data-v-072611b8]{text-align:center;display:grid;justify-items:center;gap:8px;padding:24px}.empty-mark[data-v-072611b8]{width:72px;height:72px;border-radius:24px;display:grid;place-items:center;background:var(--accent-light);color:var(--accent)}.empty-mark svg[data-v-072611b8]{width:32px;height:32px}@media (max-width: 1120px){.messenger-shell[data-v-072611b8]{grid-template-columns:320px minmax(0,1fr)}.message-stack[data-v-072611b8]{max-width:min(78%,620px)}}@media (max-width: 860px){.chats-page[data-v-072611b8]{height:auto;min-height:0}.chats-head[data-v-072611b8]{align-items:start;flex-direction:column}.messenger-shell[data-v-072611b8]{grid-template-columns:1fr}.conversation-panel[data-v-072611b8]{margin-right:0}.dialog-panel[data-v-072611b8]{max-height:520px}.conversation-panel[data-v-072611b8]{min-height:640px}}@media (max-width: 560px){.chats-page[data-v-072611b8]{gap:14px}.chats-head h1[data-v-072611b8]{font-size:32px}.chats-head p[data-v-072611b8]{margin-top:2px}.connection-status[data-v-072611b8]{padding:7px 11px}.messenger-shell[data-v-072611b8]{display:block}.messenger-shell:not(.conversation-open) .conversation-panel[data-v-072611b8]{display:none}.messenger-shell.conversation-open .dialog-panel[data-v-072611b8]{display:none}.dialog-panel[data-v-072611b8],.conversation-panel[data-v-072611b8]{border-radius:22px}.dialog-panel[data-v-072611b8]{max-height:none;min-height:calc(100dvh - var(--header-h) - 204px)}.dialog-card[data-v-072611b8],.user-result[data-v-072611b8]{border-radius:18px;background:color-mix(in srgb,var(--surface-2) 62%,transparent)}.conversation-panel[data-v-072611b8]{min-height:calc(100dvh - var(--header-h) - 124px);max-height:calc(100dvh - var(--header-h) - 124px)}.mobile-chat-back[data-v-072611b8]{width:36px;height:36px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--surface) 82%,transparent);color:var(--text-secondary);display:grid;place-items:center;cursor:pointer}.mobile-chat-back svg[data-v-072611b8]{width:20px;height:20px}.message-thread[data-v-072611b8]{padding:16px}.message-stack[data-v-072611b8]{max-width:min(86%,420px)}.conversation-top[data-v-072611b8]{padding:14px}.peer-main h2[data-v-072611b8]{font-size:16px}}.admin-shell[data-v-a5d9b7ed]{width:100%;min-height:100dvh;padding:28px;overflow:auto;background:radial-gradient(circle at 18% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 28%),radial-gradient(circle at 84% 8%,color-mix(in srgb,var(--success) 10%,transparent),transparent 24%),var(--bg)}.admin-panel[data-v-a5d9b7ed]{width:min(1180px,100%);margin:0 auto;background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-lg);padding:24px}.admin-header[data-v-a5d9b7ed]{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.eyebrow[data-v-a5d9b7ed]{color:var(--accent);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}h1[data-v-a5d9b7ed]{font-family:var(--font-display);font-size:38px;line-height:1.1;margin:2px 0 6px}.subline[data-v-a5d9b7ed]{color:var(--text-secondary)}.logout-btn[data-v-a5d9b7ed],.delete-btn[data-v-a5d9b7ed]{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-primary);cursor:pointer;font-weight:700;min-height:38px;padding:0 14px}.logout-btn[data-v-a5d9b7ed]:hover{background:var(--surface-2)}.summary-row[data-v-a5d9b7ed]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.summary-item[data-v-a5d9b7ed]{border:1px solid var(--border-soft);border-radius:12px;background:color-mix(in srgb,var(--surface-2) 70%,transparent);padding:14px 16px}.summary-item span[data-v-a5d9b7ed]{display:block;font-size:24px;font-weight:800;line-height:1}.summary-item p[data-v-a5d9b7ed]{color:var(--text-muted);margin-top:6px}.alert[data-v-a5d9b7ed]{border-radius:10px;padding:11px 13px;margin-bottom:12px;font-weight:600}.alert.danger[data-v-a5d9b7ed]{background:var(--danger-bg);color:var(--danger)}.alert.success[data-v-a5d9b7ed]{background:var(--success-bg);color:var(--success)}.table-wrap[data-v-a5d9b7ed]{overflow-x:auto;border:1px solid var(--border-soft);border-radius:12px}table[data-v-a5d9b7ed]{width:100%;min-width:820px;border-collapse:collapse}th[data-v-a5d9b7ed],td[data-v-a5d9b7ed]{padding:14px;text-align:left;border-bottom:1px solid var(--border-soft);vertical-align:middle}th[data-v-a5d9b7ed]{color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;background:color-mix(in srgb,var(--surface-2) 74%,transparent)}tbody tr:last-child td[data-v-a5d9b7ed]{border-bottom:0}.user-cell[data-v-a5d9b7ed]{display:flex;align-items:center;gap:10px}.avatar[data-v-a5d9b7ed]{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--accent-light);color:var(--accent);font-weight:800}.actions[data-v-a5d9b7ed]{text-align:right}.delete-btn[data-v-a5d9b7ed]{border-color:color-mix(in srgb,var(--danger) 32%,var(--border));color:var(--danger)}.delete-btn[data-v-a5d9b7ed]:hover:not(:disabled){background:var(--danger-bg)}.delete-btn[data-v-a5d9b7ed]:disabled{cursor:wait;opacity:.65}.empty[data-v-a5d9b7ed]{color:var(--text-muted);text-align:center;padding:34px 14px}@media (max-width: 720px){.admin-shell[data-v-a5d9b7ed]{padding:14px}.admin-panel[data-v-a5d9b7ed]{padding:16px;border-radius:14px}.admin-header[data-v-a5d9b7ed]{flex-direction:column}.logout-btn[data-v-a5d9b7ed]{width:100%}.summary-row[data-v-a5d9b7ed]{grid-template-columns:1fr}}:root{--bg: #f6f1e8;--surface: #fffcf7;--surface-2: #f1eadf;--border: #ded3c5;--border-soft: #ece3d8;--text-primary: #201a15;--text-secondary: #6d635a;--text-muted: #9d9388;--accent: #3559d8;--accent-light: #eaf0ff;--accent-mid: #c7d3ff;--success: #2f7f58;--success-bg: #edf8f2;--warning: #bc6a19;--warning-bg: #fff1dc;--danger: #c4493e;--danger-bg: #fdecea;--chat-fab-bg: #201a15;--chat-fab-fg: #fffcf7;--chat-fab-border: rgba(255, 255, 255, .12);--chat-header-bg: linear-gradient(180deg, #fff, #fbfaf7);--sidebar-w: 268px;--header-h: 60px;--radius: 16px;--radius-sm: 10px;--shadow: 0 10px 30px rgba(31, 26, 20, .07), 0 3px 10px rgba(31, 26, 20, .04);--shadow-lg: 0 26px 70px rgba(31, 26, 20, .14), 0 8px 24px rgba(31, 26, 20, .08);--font-display: "Playfair Display", Georgia, serif;--font-body: "DM Sans", system-ui, sans-serif;--transition: .22s cubic-bezier(.4, 0, .2, 1)}html[data-theme=dark]{--bg: #11161f;--surface: #171d28;--surface-2: #212936;--border: #313b4c;--border-soft: #273142;--text-primary: #eef3fb;--text-secondary: #b7c1cf;--text-muted: #8490a1;--accent: #82a0ff;--accent-light: rgba(130, 160, 255, .12);--accent-mid: rgba(130, 160, 255, .24);--success: #7ed6a6;--success-bg: rgba(44, 120, 81, .22);--warning: #f1bd74;--warning-bg: rgba(188, 106, 25, .2);--danger: #ff8f85;--danger-bg: rgba(196, 73, 62, .2);--chat-fab-bg: #1b2431;--chat-fab-fg: #eef3fb;--chat-fab-border: #313b4c;--chat-header-bg: linear-gradient(180deg, #243042, #1b2431);--shadow: 0 14px 34px rgba(0, 0, 0, .28), 0 4px 14px rgba(0, 0, 0, .18);--shadow-lg: 0 32px 84px rgba(0, 0, 0, .4), 0 10px 26px rgba(0, 0, 0, .24)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 10%,transparent) 0%,transparent 28%),radial-gradient(circle at top right,color-mix(in srgb,var(--warning) 8%,transparent) 0%,transparent 22%),var(--bg);font-family:var(--font-body);color:var(--text-primary);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition),color var(--transition)}#app{display:flex;height:100dvh;overflow:hidden}button,input,textarea,select{font:inherit}button,input,textarea,select,a,div,span{min-width:0}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}.card{background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card-title{font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted)}.btn{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition);font-family:var(--font-body);border:none;line-height:1}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{filter:brightness(1.03);transform:translateY(-1px)}.btn-ghost{background:color-mix(in srgb,var(--surface) 82%,transparent);border:1px solid var(--border);color:var(--text-secondary)}.btn-ghost:hover{background:var(--surface-2);color:var(--text-primary)}.btn svg{width:14px;height:14px}.chip{display:inline-flex;align-items:center;font-size:11px;font-weight:500;padding:2px 8px;border-radius:99px;letter-spacing:.1px}.chip-pending{background:var(--surface-2);color:var(--text-secondary)}.chip-progress{background:#e8f0fe;color:#1a56db}.chip-done{background:var(--success-bg);color:var(--success)}.chip-overdue{background:var(--danger-bg);color:var(--danger)}.progress-bar{height:4px;background:var(--border);border-radius:99px;overflow:hidden;margin-top:8px}.progress-fill{height:100%;border-radius:99px;background:var(--accent);transition:width .4s ease}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a171466;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fadeIn .15s ease}.modal{background:color-mix(in srgb,var(--surface) 94%,transparent);border-radius:16px;width:min(90vw,600px);max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:slideUp .2s cubic-bezier(.4,0,.2,1)}.modal-header{padding:20px 22px 16px;border-bottom:1px solid var(--border-soft);display:flex;align-items:center;justify-content:space-between}.modal-title{font-family:var(--font-display);font-size:17px;font-weight:600}.modal-close{width:30px;height:30px;border-radius:6px;border:1px solid var(--border);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--transition)}.modal-close:hover{background:var(--surface-2)}.modal-close svg{width:14px;height:14px}.modal-body{padding:20px 22px;overflow-y:auto;flex:1}.modal-footer{padding:16px 22px;border-top:1px solid var(--border-soft);display:flex;justify-content:flex-end;gap:10px}.form-group{margin-bottom:16px}.form-label{display:block;font-size:12.5px;font-weight:500;color:var(--text-secondary);margin-bottom:6px;letter-spacing:.2px}.form-input{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13.5px;outline:none;font-family:var(--font-body);background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--text-primary);transition:border-color var(--transition)}.form-input:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.dots span{display:inline-block;width:5px;height:5px;background:var(--accent);border-radius:50%;margin:0 2px;animation:bounce 1.2s ease-in-out infinite}.dots span:nth-child(2){animation-delay:.2s}.dots span:nth-child(3){animation-delay:.4s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.toast-enter-active,.toast-leave-active{transition:all .25s ease}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%) translateY(10px)}@media (max-width: 980px){:root{--header-h: 56px}}@media (max-width: 760px){:root{--header-h: 78px;--radius: 18px;--radius-sm: 12px}html,body{background:radial-gradient(circle at 72% 4%,color-mix(in srgb,var(--accent) 16%,transparent) 0%,transparent 28%),radial-gradient(circle at 12% 0%,color-mix(in srgb,var(--success) 10%,transparent) 0%,transparent 22%),var(--bg)}.card{padding:16px;border-radius:20px;background:color-mix(in srgb,var(--surface) 84%,transparent);box-shadow:0 14px 34px #0a101c14}.btn{min-height:42px;justify-content:center;border-radius:14px}button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.modal-overlay{align-items:end;padding:12px}.modal{width:100%;max-height:min(86vh,760px);border-radius:24px}.modal-header,.modal-body,.modal-footer{padding-left:16px;padding-right:16px}}
