:root{--primary-50:#eef2ff;--primary-100:#e0e7ff;--primary-200:#c7d2fe;--primary-300:#a5b4fc;--primary-400:#818cf8;--primary-500:#6366f1;--primary-600:#4f46e5;--primary-700:#4338ca;--primary-800:#3730a3;--primary-900:#312e81;--secondary-400:#38bdf8;--secondary-500:#0ea5e9;--secondary-600:#0284c7;--accent-pink:#ec4899;--accent-orange:#f97316;--accent-green:#10b981;--accent-red:#ef4444;--accent-purple:#8b5cf6;--bg-build-on:#f5f3ff;--bg-build-on-darker:#ede9fe;--accent-teal:#14b8a6;--scaffold-1:#eab308;--scaffold-2:#06b6d4;--scaffold-3:#3b82f6;--scaffold-4:#c4b5fd;--scaffold-5:#f43f5e;--scaffold-6:#84cc16;--scaffold-7:#14b8a6;--scaffold-8:#0ea5e9;--scaffold-9:#64748b;--scaffold-10:#f97316;--kb-rise-above:#d97706;--bg-rise-above:#fffbeb;--bg-rise-above-darker:#fef3c7;--bg-view-link:#fdf2f8;--bg-view-link-darker:#fce7f3;--bg-main:#f8fafc;--bg-card:#fff;--bg-canvas:#f1f5f9;--text-main:#0f172a;--text-muted:#64748b;--text-inverse:#fff;--border-subtle:#e2e8f0;--border-strong:#cbd5e1;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--shadow-glow:0 0 15px #6366f180;--gradient-primary:linear-gradient(135deg, var(--primary-500), var(--secondary-500));--gradient-glass:linear-gradient(135deg, #ffffffb3, #ffffff4d);--glass-bg:#ffffffbf;--glass-border:#ffffff80;--glass-blur:blur(16px);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-icon-fallback:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--arrow-color:#334155}:root.dark{--bg-main:#0f172a;--bg-card:#1e293b;--bg-canvas:#0b1120;--text-main:#f8fafc;--text-muted:#94a3b8;--text-inverse:#0f172a;--border-subtle:#334155;--border-strong:#475569;--glass-bg:#1e293bbf;--glass-border:#ffffff1a;--shadow-md:0 4px 6px -1px #00000080, 0 2px 4px -1px #0000004d;--bg-rise-above:#451a03;--bg-rise-above-darker:#5b2404;--bg-build-on:#2e1065;--bg-build-on-darker:#4c1d95;--bg-view-link:#831843;--bg-view-link-darker:#9d174d;--arrow-color:#e2e8f0}*,:before,:after{box-sizing:border-box;margin:0;font-weight:400;position:relative}body{min-height:100vh;color:var(--text-main);background:var(--bg-main);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5;transition:color .3s,background-color .3s}a{color:var(--primary-500);text-decoration:none;transition:color .2s}a:hover{color:var(--primary-600)}button{font-family:var(--font-sans);cursor:pointer}h1,h2,h3,h4,h5,h6{color:var(--text-main);margin-bottom:.5em;font-weight:600;line-height:1.2}strong,b{font-weight:700}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--shadow-md);border-radius:16px}.btn{border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-subtle)}.btn-secondary:hover{border-color:var(--border-strong);background:var(--bg-canvas)}.btn-danger{background:linear-gradient(135deg, var(--accent-red), #f87171);color:#fff;box-shadow:var(--shadow-sm)}.btn-danger:hover{transform:translateY(-1px);box-shadow:0 0 15px #ef444480}.btn-danger:active{transform:translateY(0)}.knowledge-flow .vue-flow__edge-path,.knowledge-flow .vue-flow__connection-path,.vue-flow__edge-path{stroke:var(--arrow-color);stroke-width:2px}.vue-flow__arrowhead{fill:var(--arrow-color)}.material-symbols-outlined{font-family:"Material Symbols Outlined", var(--font-icon-fallback);letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"liga";direction:ltr;font-size:24px;line-height:1}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:100 700;size-adjust:100%;src:local(Material Symbols Outlined)}:root.theme-minimalism{--bg-main:#fafafa;--bg-card:#fff;--bg-canvas:#f5f5f5;--border-subtle:#eaeaea;--border-strong:#d4d4d4;--text-main:#111;--text-muted:#666;--glass-bg:#ffffffe6;--glass-border:var(--border-subtle);--glass-blur:blur(8px);--shadow-sm:0 1px 2px #00000005!important;--shadow-md:0 4px 12px #00000008!important;--shadow-lg:0 10px 24px #0000000a!important;--shadow-xl:0 20px 40px #0000000a!important;--shadow-glow:none!important}:root.theme-minimalism.dark{--bg-main:#0a0a0a;--bg-card:#141414;--bg-canvas:#000;--border-subtle:#262626;--border-strong:#3f3f46;--text-main:#ededed;--text-muted:#a1a1aa;--glass-bg:#141414cc;--glass-border:var(--border-subtle)}.theme-minimalism .glass-panel,.theme-minimalism .btn,.theme-minimalism .dropdown-menu{transition:all .2s;border-style:solid!important;border-width:1px!important;border-color:var(--border-subtle)!important;box-shadow:var(--shadow-sm)!important;border-radius:6px!important}.theme-minimalism .vue-flow__node,.theme-minimalism .custom-node{transition:all .2s;border-style:solid!important;border-width:3px 1px 1px!important;border-right-color:var(--border-subtle)!important;border-bottom-color:var(--border-subtle)!important;border-left-color:var(--border-subtle)!important;box-shadow:var(--shadow-md)!important;border-radius:6px!important}.theme-minimalism .btn-primary,.theme-minimalism .btn-analytics{background:var(--text-main)!important;color:var(--bg-main)!important;border:1px solid var(--text-main)!important;box-shadow:var(--shadow-sm)!important;background-image:none!important;font-weight:500!important}.theme-minimalism .btn-primary:hover,.theme-minimalism .btn-analytics:hover{opacity:.85;box-shadow:var(--shadow-sm)!important;background-image:none!important;transform:none!important}.theme-minimalism .btn-secondary{color:var(--text-main)!important;border:1px solid var(--border-strong)!important;box-shadow:none!important;background:0 0!important}.theme-minimalism .btn-secondary:hover{background:var(--bg-canvas)!important}.theme-minimalism .read-filter-group{overflow:hidden;border:1px solid var(--border-strong)!important;border-radius:6px!important;gap:0!important;padding:0!important}.theme-minimalism .filter-btn{border:none!important;border-right:1px solid var(--border-strong)!important;border-radius:0!important;padding:.5rem 1rem!important}.theme-minimalism .filter-btn:last-child{border-right:none!important}.theme-minimalism .filter-btn.active{background:var(--text-main)!important;color:var(--bg-main)!important;box-shadow:none!important}.theme-minimalism .display-style-wrapper{border:1px solid var(--border-strong)!important;border-radius:6px!important}.theme-minimalism .display-style-wrapper .btn{box-shadow:none!important;border:none!important;border-radius:0!important}.theme-minimalism .display-style-wrapper .btn:first-child{border-right:1px solid var(--border-strong)!important}:root.theme-glassmorphism{--glass-bg:#fff6;--glass-border:#fffc;--glass-blur:blur(32px);--bg-main:#e0e7ff;--bg-canvas:radial-gradient(at 0% 0%, #fae8ff 0px, transparent 50%), radial-gradient(at 100% 0%, #e0e7ff 0px, transparent 50%), radial-gradient(at 100% 100%, #f3e8ff 0px, transparent 50%), radial-gradient(at 0% 100%, #fce7f3 0px, transparent 50%);--bg-card:#ffffff80;--border-subtle:#ffffff80}:root.theme-glassmorphism.dark{--glass-bg:#0f172a73;--glass-border:#fff3;--glass-blur:blur(32px);--bg-main:#020617;--bg-canvas:radial-gradient(at 0% 0%, #8b5cf64d 0px, transparent 50%), radial-gradient(at 100% 0%, #3b82f64d 0px, transparent 50%), radial-gradient(at 100% 100%, #ec48994d 0px, transparent 50%), radial-gradient(at 0% 100%, #a855f74d 0px, transparent 50%);--bg-card:#0f172a80;--border-subtle:#ffffff1a}.theme-glassmorphism .glass-panel{background:var(--glass-bg)!important;-webkit-backdrop-filter:var(--glass-blur)!important;border:1px solid var(--glass-border)!important;border-radius:24px!important;box-shadow:0 8px 32px #1f268726!important}.theme-glassmorphism .vue-flow__node{-webkit-backdrop-filter:none!important;border:1px solid var(--glass-border)!important;background:#ffffffd9!important;border-radius:16px!important;box-shadow:0 4px 16px #1f26871a!important}:is(.theme-glassmorphism .vue-flow__node:has(.graph-mode),.theme-glassmorphism .vue-flow__node:has(.embedded)){box-shadow:none!important;background:0 0!important;border:none!important}.theme-glassmorphism .vue-flow *,:is(body:has(.is-editing) .theme-glassmorphism .glass-panel,body:has(.is-editing) .theme-glassmorphism .btn-primary,body:has(.is-editing) .theme-glassmorphism .btn-secondary,body:has(.is-editing) .theme-glassmorphism .btn-analytics,body:has(.is-editing) .theme-glassmorphism .dropdown-menu){-webkit-backdrop-filter:none!important}body:has(.is-editing) .theme-glassmorphism .glass-panel{background:#fffffff2!important}body:has(.is-editing) .theme-glassmorphism.dark .glass-panel{background:#0f172af2!important}.theme-glassmorphism.dark .vue-flow__node{background:#1e293bd9!important}.theme-glassmorphism .btn-secondary{-webkit-backdrop-filter:var(--glass-blur)!important;border:1px solid var(--glass-border)!important;background:#fff3!important;border-radius:12px!important;box-shadow:0 4px 12px #0000000d!important}.theme-glassmorphism.dark .btn-secondary{background:#0f172a66!important}.theme-glassmorphism .btn-primary{-webkit-backdrop-filter:var(--glass-blur)!important;background:linear-gradient(135deg,#6366f1d9,#0ea5e9d9)!important;border:1px solid #ffffff80!important;border-radius:12px!important;box-shadow:0 8px 20px #6366f14d!important}.theme-glassmorphism .btn-analytics{-webkit-backdrop-filter:var(--glass-blur)!important;background:linear-gradient(135deg,#ea580cd9,#dc2626d9)!important;border:1px solid #ffffff80!important;border-radius:12px!important;box-shadow:0 8px 20px #dc26264d!important}.theme-glassmorphism .dropdown-menu,.theme-glassmorphism .mobile-menu{-webkit-backdrop-filter:blur(48px)!important;background:#fffc!important}.theme-glassmorphism.dark .dropdown-menu,.theme-glassmorphism.dark .mobile-menu{background:#0f172ad9!important}:root.theme-neubrutalism{--shadow-sm:2px 2px 0px var(--text-main);--shadow-md:4px 4px 0px var(--text-main);--shadow-lg:6px 6px 0px var(--text-main);--shadow-xl:8px 8px 0px var(--text-main);--shadow-glow:none;--border-subtle:var(--text-main);--border-strong:var(--text-main);--glass-bg:var(--bg-card);--glass-border:var(--text-main);--glass-blur:blur(0px);--bg-main:#fffdf0}:root.theme-neubrutalism.dark{--shadow-sm:2px 2px 0px #000;--shadow-md:4px 4px 0px #000;--shadow-lg:6px 6px 0px #000;--shadow-xl:8px 8px 0px #000;--border-subtle:#000;--border-strong:#000;--glass-border:#000;--bg-main:#1a1a1a;--bg-card:#2a2a2a;--bg-canvas:#1a1a1a;--text-main:#f4f4f4}.theme-neubrutalism .glass-panel,.theme-neubrutalism .btn,.theme-neubrutalism .vue-flow__node,.theme-neubrutalism .custom-node,.theme-neubrutalism .dropdown-menu{border:2px solid var(--text-main)!important;box-shadow:4px 4px 0px var(--text-main)!important;border-radius:0!important;transition:transform .1s,box-shadow .1s!important}.theme-neubrutalism.dark .glass-panel,.theme-neubrutalism.dark .btn,.theme-neubrutalism.dark .vue-flow__node,.theme-neubrutalism.dark .custom-node,.theme-neubrutalism.dark .dropdown-menu{border:2px solid #000!important;box-shadow:4px 4px #000!important}.theme-neubrutalism .btn:hover{box-shadow:2px 2px 0px var(--text-main)!important;transform:translate(2px,2px)!important}.theme-neubrutalism.dark .btn:hover{box-shadow:2px 2px #000!important}.theme-neubrutalism .btn:active{box-shadow:0px 0px 0px var(--text-main)!important;transform:translate(4px,4px)!important}.theme-neubrutalism.dark .btn:active{box-shadow:0 0 #000!important}.theme-neubrutalism .custom-node.node-primary{border-top:4px solid var(--primary-500)!important}.theme-neubrutalism .custom-node.node-secondary{border-top:4px solid var(--accent-orange)!important}.theme-neubrutalism .custom-node.node-accent{border-top:4px solid var(--accent-green)!important}.theme-neubrutalism .custom-node.node-build-on{border-top:4px solid var(--accent-purple)!important}.theme-neubrutalism .custom-node.node-alternative{border-top:4px solid var(--accent-pink)!important}.theme-neubrutalism .custom-node.node-synthesis{border-top:4px solid var(--accent-teal)!important}.theme-neubrutalism .custom-node.node-scaffold-1{border-top:4px solid var(--scaffold-1)!important}.theme-neubrutalism .custom-node.node-scaffold-2{border-top:4px solid var(--scaffold-2)!important}.theme-neubrutalism .custom-node.node-scaffold-3{border-top:4px solid var(--scaffold-3)!important}.theme-neubrutalism .custom-node.node-scaffold-4{border-top:4px solid var(--scaffold-4)!important}.theme-neubrutalism .custom-node.node-scaffold-5{border-top:4px solid var(--scaffold-5)!important}.theme-neubrutalism .custom-node.node-scaffold-6{border-top:4px solid var(--scaffold-6)!important}.theme-neubrutalism .navbar{border-bottom:2px solid var(--text-main)!important;box-shadow:none!important}.theme-neubrutalism.dark .navbar{border-bottom:2px solid #000!important}.theme-neubrutalism .display-style-wrapper{border:2px solid var(--text-main)!important;box-shadow:4px 4px 0px var(--text-main)!important;border-radius:0!important}.theme-neubrutalism.dark .display-style-wrapper{border:2px solid #000!important;box-shadow:4px 4px #000!important}.theme-neubrutalism .display-style-wrapper .btn{box-shadow:none!important;border:none!important;transform:none!important}.theme-neubrutalism .display-style-wrapper .btn:hover,.theme-neubrutalism .display-style-wrapper .btn:active{box-shadow:none!important;transform:none!important}.theme-neubrutalism .display-style-wrapper .btn:first-child{border-right:2px solid var(--text-main)!important}.theme-neubrutalism.dark .display-style-wrapper .btn:first-child{border-right:2px solid #000!important}#app{max-width:100vw;margin:0;padding:0;font-weight:400}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.w-full{width:100%}.h-full{height:100%}.h-screen{height:100vh}.w-screen{width:100vw}.text-center{text-align:center}.font-bold{font-weight:700}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.m-4{margin:1rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.fade-enter-active,.fade-leave-active{transition:opacity .3s}.fade-enter-from,.fade-leave-to{opacity:0}.navbar[data-v-6d76e78e]{z-index:1050;border-top:none;border-left:none;border-right:none;border-radius:0;width:100%;padding:.75rem 1.5rem;position:sticky;top:0}.nav-container[data-v-6d76e78e]{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.logo-link[data-v-6d76e78e]{align-items:center;gap:.75rem;text-decoration:none;display:flex}.logo-icon[data-v-6d76e78e]{background:var(--gradient-primary);width:32px;height:32px;box-shadow:var(--shadow-sm);color:#fff;border-radius:8px;justify-content:center;align-items:center;display:flex}.nav-symbol[data-v-6d76e78e]{font-size:20px}.logo-text[data-v-6d76e78e]{color:var(--text-main);letter-spacing:-.025em;font-size:1.25rem;font-weight:700}.desktop-nav[data-v-6d76e78e]{display:none}.user-profile[data-v-6d76e78e]{align-items:center;gap:1rem;margin-left:1rem;display:flex}.profile-btn[data-v-6d76e78e]{cursor:pointer;background:0 0;border:none;border-radius:20px;align-items:center;gap:.25rem;padding:.25rem;transition:background .2s;display:flex}.profile-btn[data-v-6d76e78e]:hover{background:var(--bg-canvas)}.dropdown-menu[data-v-6d76e78e]{background:var(--bg-card);border:1px solid var(--border-subtle);min-width:200px;box-shadow:var(--shadow-lg);z-index:100;border-radius:8px;flex-direction:column;margin-top:.5rem;padding:.5rem 0;display:flex;position:absolute;top:100%;right:0}.dropdown-header[data-v-6d76e78e]{color:var(--text-main);flex-direction:column;gap:.25rem;padding:.5rem 1rem;display:flex}.dropdown-item[data-v-6d76e78e]{text-align:left;cursor:pointer;width:100%;color:var(--text-main);background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:background .2s;display:flex}.dropdown-item[data-v-6d76e78e]:hover{background:var(--bg-canvas)}.dropdown-item.delete-item[data-v-6d76e78e]{color:var(--error-main)}.dropdown-item.delete-item[data-v-6d76e78e]:hover{background:#ef44441a}.avatar[data-v-6d76e78e]{object-fit:cover;border:2px solid var(--primary-200);border-radius:50%;width:32px;height:32px}.nav-link[data-v-6d76e78e]{color:var(--text-muted);font-weight:500;transition:color .2s}.nav-link[data-v-6d76e78e]:hover,.nav-link.router-link-active[data-v-6d76e78e]{color:var(--primary-600)}.theme-toggle-btn[data-v-6d76e78e]:hover{background:var(--bg-canvas)!important;color:var(--primary-600)!important}.mobile-toggle[data-v-6d76e78e]{z-index:60;background:0 0;border:none;flex-direction:column;gap:5px;padding:.5rem;display:flex}.bar[data-v-6d76e78e]{background-color:var(--text-main);width:24px;height:2px;transition:all .3s}.bar.open[data-v-6d76e78e]:first-child{transform:translateY(7px)rotate(45deg)}.bar.open[data-v-6d76e78e]:nth-child(2){opacity:0}.bar.open[data-v-6d76e78e]:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-menu[data-v-6d76e78e]{background:var(--bg-card);width:100%;max-height:0;box-shadow:var(--shadow-md);flex-direction:column;padding:0;transition:max-height .3s,padding .3s;display:flex;position:absolute;top:100%;left:0;overflow:hidden auto}.mobile-menu.open[data-v-6d76e78e]{max-height:calc(100vh - 60px);padding:1rem 0}.mobile-link[data-v-6d76e78e]{color:var(--text-main);border-bottom:1px solid var(--border-subtle);padding:1rem 2rem;font-weight:500}.mobile-link[data-v-6d76e78e]:last-child{border-bottom:none}.mobile-link[data-v-6d76e78e]:hover{background:var(--bg-canvas);color:var(--primary-600)}@media (width>=768px){.desktop-nav[data-v-6d76e78e]{gap:2rem;display:flex}.mobile-toggle[data-v-6d76e78e]{display:none}.mobile-menu[data-v-6d76e78e]{display:none!important}}.app-footer[data-v-9840012c]{border-top:1px solid var(--border-subtle);background:var(--bg-main);width:100%;color:var(--text-muted);text-align:center;box-sizing:border-box}.app-footer--full[data-v-9840012c]{flex-direction:column;align-items:center;gap:.15rem;padding:.85rem 1.5rem;display:flex}.footer-whatsnew[data-v-9840012c]{color:var(--primary-600);align-items:center;gap:.3rem;margin-bottom:.35rem;font-size:.74rem;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.footer-whatsnew[data-v-9840012c]:hover{color:var(--primary-700);text-decoration:underline}.footer-whatsnew .material-symbols-outlined[data-v-9840012c]{font-size:15px}.footer-dev[data-v-9840012c]{max-width:860px;color:var(--text-muted);text-wrap:pretty;margin:0;font-size:.72rem;font-weight:500;line-height:1.45}.footer-copy[data-v-9840012c]{opacity:.85;max-width:860px;margin:0;font-size:.68rem;line-height:1.45}.app-footer--compact[data-v-9840012c]{justify-content:center;align-items:center;height:30px;padding:0 1rem;display:flex}.footer-compact-line[data-v-9840012c]{white-space:nowrap;text-overflow:ellipsis;cursor:default;max-width:100%;font-size:.66rem;overflow:hidden}@media (width<=640px){.footer-copy[data-v-9840012c]{font-size:.64rem}.app-footer--full[data-v-9840012c]{padding:.75rem 1rem}}.maint-lockout[data-v-46d2e6d7]{z-index:100000;background:var(--bg-canvas,#0f172a);background:color-mix(in srgb, var(--bg-canvas,#0f172a) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.maint-card[data-v-46d2e6d7]{text-align:center;background:var(--bg-card,#fff);border:1px solid var(--border-subtle,#00000014);width:100%;max-width:460px;box-shadow:var(--shadow-lg,0 20px 40px #0003);border-radius:16px;padding:2.5rem 2rem}.maint-icon[data-v-46d2e6d7]{background:var(--gradient-primary,linear-gradient(135deg, #6366f1, #8b5cf6));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1.25rem;display:flex}.maint-icon .material-symbols-outlined[data-v-46d2e6d7]{font-size:32px}.maint-title[data-v-46d2e6d7]{color:var(--text-main,#111827);margin:0 0 .5rem;font-size:1.5rem;font-weight:700}.maint-message[data-v-46d2e6d7]{color:var(--text-muted,#6b7280);margin:0 0 1rem;line-height:1.55}.maint-eta[data-v-46d2e6d7]{color:var(--text-main,#111827);margin:0 0 1.5rem;font-size:.95rem}.maint-status[data-v-46d2e6d7]{color:var(--text-muted,#6b7280);justify-content:center;align-items:center;gap:.6rem;font-size:.85rem;display:flex}.maint-spinner[data-v-46d2e6d7]{border:2px solid var(--border-subtle,#00000026);border-top-color:var(--primary-600,#6366f1);border-radius:50%;width:16px;height:16px;animation:.9s linear infinite maint-spin-46d2e6d7}@keyframes maint-spin-46d2e6d7{to{transform:rotate(360deg)}}.maint-banner[data-v-46d2e6d7]{z-index:2000;color:#fff;box-shadow:var(--shadow-sm,0 1px 3px #00000026);align-items:center;gap:.6rem;padding:.6rem 1.25rem;font-size:.9rem;font-weight:500;display:flex;position:sticky;top:0}.maint-banner .banner-icon[data-v-46d2e6d7]{flex-shrink:0;font-size:20px}.banner-text[data-v-46d2e6d7]{flex:1;min-width:0}.banner-countdown[data-v-46d2e6d7]{font-variant-numeric:tabular-nums;opacity:.95;flex-shrink:0;font-weight:600}.kind-notice[data-v-46d2e6d7]{background:linear-gradient(90deg,#2563eb,#4f46e5)}.kind-readonly[data-v-46d2e6d7]{background:linear-gradient(90deg,#d97706,#b45309)}.kind-admin[data-v-46d2e6d7]{background:linear-gradient(90deg,#475569,#334155)}@media (width<=640px){.maint-banner[data-v-46d2e6d7]{flex-wrap:wrap;font-size:.82rem}}.app-container[data-v-ada75306]{flex-direction:column;min-height:100vh;display:flex}.main-content[data-v-ada75306]{flex-direction:column;flex:1;width:100%;height:100%;display:flex}.card[data-v-a133ba0f]{border-radius:16px;flex-direction:column;transition:all .3s;display:flex;overflow:hidden}.card-solid[data-v-a133ba0f]{background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm)}.card-hover[data-v-a133ba0f]:hover{box-shadow:var(--shadow-lg);border-color:var(--primary-300);transform:translateY(-4px)}.card-header[data-v-a133ba0f]{padding:1.5rem 1.5rem .5rem}.card-title[data-v-a133ba0f]{color:var(--text-main);margin:0;font-size:1.25rem;font-weight:600}.card-body[data-v-a133ba0f]{flex:1;padding:1.5rem}.card-header+.card-body[data-v-a133ba0f]{padding-top:.5rem}.card-footer[data-v-a133ba0f]{border-top:1px solid var(--border-subtle);background:#00000005;padding:1rem 1.5rem}@media (prefers-color-scheme:dark){.card-footer[data-v-a133ba0f]{background:#ffffff05}}.modal-overlay[data-v-6b70465d]{-webkit-backdrop-filter:blur(4px);z-index:9999;background:#0f172a99;justify-content:center;align-items:flex-start;width:100vw;height:100vh;padding:1rem;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.modal-content[data-v-6b70465d]{width:100%;max-width:500px;max-height:90vh;box-shadow:var(--shadow-xl);flex-direction:column;margin:auto;display:flex;overflow:hidden;transform:scale(1)}.modal-header[data-v-6b70465d]{border-bottom:1px solid var(--border-subtle);border-top-left-radius:inherit;border-top-right-radius:inherit;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-title[data-v-6b70465d]{color:var(--text-main);margin:0;font-size:1.25rem;font-weight:600}.modal-close[data-v-6b70465d]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.25rem;transition:all .2s;display:flex}.modal-close[data-v-6b70465d]:hover{color:var(--text-main);background:var(--bg-canvas)}.modal-body[data-v-6b70465d]{flex:1;padding:1.5rem;overflow-y:auto}.modal-footer[data-v-6b70465d]{border-top:1px solid var(--border-subtle);border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;background:#00000005;justify-content:flex-end;gap:1rem;padding:1rem 1.5rem;display:flex}.modal-enter-active[data-v-6b70465d],.modal-leave-active[data-v-6b70465d]{transition:opacity .3s}.modal-enter-active .modal-content[data-v-6b70465d],.modal-leave-active .modal-content[data-v-6b70465d]{transition:transform .3s}.modal-enter-from[data-v-6b70465d],.modal-leave-to[data-v-6b70465d]{opacity:0}.modal-enter-from .modal-content[data-v-6b70465d],.modal-leave-to .modal-content[data-v-6b70465d]{transform:scale(.95)}@media (prefers-color-scheme:dark){.modal-overlay[data-v-6b70465d]{background:#000000b3}}.home-container[data-v-f4b6d9e4]{width:100%;max-width:1200px;margin:0 auto;padding:2rem}.header-section[data-v-f4b6d9e4]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.btn-new-community[data-v-f4b6d9e4]{background:var(--gradient-primary);color:#fff;cursor:pointer;box-shadow:var(--shadow-sm);border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:opacity .15s,box-shadow .15s;display:inline-flex}.btn-new-community[data-v-f4b6d9e4]:hover{opacity:.9;box-shadow:var(--shadow-md)}.page-title[data-v-f4b6d9e4]{letter-spacing:-.025em;background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:2.5rem;font-weight:800}.subtitle[data-v-f4b6d9e4]{color:var(--text-muted);font-size:1.125rem}.course-filter-bar[data-v-f4b6d9e4]{align-items:center;margin-bottom:2rem;display:flex}.filter-trigger[data-v-f4b6d9e4]{background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;transition:all .2s;display:flex}.course-groups[data-v-f4b6d9e4]{flex-direction:column;gap:2rem;display:flex}.course-group-header[data-v-f4b6d9e4]{border-bottom:1px solid var(--border-subtle);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.625rem 0;display:flex}.course-group-header:hover .collapse-icon[data-v-f4b6d9e4]{color:var(--primary-main)}.collapse-icon[data-v-f4b6d9e4]{color:var(--text-muted);font-size:20px;transition:transform .2s,color .2s}.course-code-chip[data-v-f4b6d9e4]{background:var(--primary-100);color:var(--primary-700);letter-spacing:.02em;white-space:nowrap;border-radius:6px;flex-shrink:0;align-items:center;padding:.2rem .6rem;font-size:.8rem;font-weight:700;display:inline-flex}.course-code-chip-sm[data-v-f4b6d9e4]{background:var(--primary-100);color:var(--primary-700);letter-spacing:.02em;white-space:nowrap;border-radius:4px;flex-shrink:0;align-items:center;padding:.1rem .4rem;font-size:.75rem;font-weight:700;display:inline-flex}.course-group-title[data-v-f4b6d9e4]{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:600;overflow:hidden}.community-count-badge[data-v-f4b6d9e4]{background:var(--bg-canvas);min-width:1.5rem;height:1.5rem;color:var(--text-muted);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0 .4rem;font-size:.75rem;font-weight:600;display:inline-flex}.community-title[data-v-f4b6d9e4]{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.25rem;font-weight:600;line-height:1.3}.community-type-label[data-v-f4b6d9e4]{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);align-items:center;gap:.25rem;margin-bottom:.375rem;font-size:.7rem;font-weight:600;display:inline-flex}.community-card-toprow[data-v-f4b6d9e4]{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.375rem;display:flex}.role-chip[data-v-f4b6d9e4]{text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:.2rem;padding:.1rem .5rem;font-size:.68rem;font-weight:700;display:inline-flex}.role-chip.role-teacher[data-v-f4b6d9e4]{color:var(--primary-600);background:#6366f11f;border:1px solid #6366f159}.role-chip.role-administrator[data-v-f4b6d9e4]{color:#d97706;background:#f59e0b24;border:1px solid #f59e0b59}.role-chip.role-student[data-v-f4b6d9e4]{background:var(--bg-canvas);color:var(--text-muted);border:1px solid var(--border-subtle)}.empty-state[data-v-f4b6d9e4]{text-align:center;background:var(--bg-main);border:1px dashed var(--border-subtle);color:var(--text-muted);border-radius:8px;padding:3rem}.spaces-grid[data-v-f4b6d9e4]{flex-direction:column;gap:1.5rem;display:flex}.space-card[data-v-f4b6d9e4]{cursor:pointer}.space-description[data-v-f4b6d9e4]{color:var(--text-main);line-height:1.6}.space-meta[data-v-f4b6d9e4]{color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.875rem;font-weight:500;display:flex}.course-search-trigger[data-v-f4b6d9e4]{border:1px solid var(--border-subtle);background:var(--bg-card);cursor:pointer;border-radius:6px;align-items:center;gap:.5rem;width:100%;padding:.625rem .75rem;transition:border-color .2s,box-shadow .2s;display:flex}.course-search-input[data-v-f4b6d9e4]{color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:.9rem}.course-search-input[data-v-f4b6d9e4]::placeholder{color:var(--text-muted)}.course-selected-pill[data-v-f4b6d9e4]{border:1px solid var(--primary-200);background:var(--primary-50,#6366f10d);color:var(--primary-700);border-radius:6px;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.course-clear-btn[data-v-f4b6d9e4]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.15rem;transition:all .15s;display:flex}.course-clear-btn[data-v-f4b6d9e4]:hover{background:var(--bg-hover,var(--bg-canvas));color:var(--text-main)}.course-dropdown-list[data-v-f4b6d9e4]{background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-lg);z-index:50;border-radius:8px;max-height:220px;margin-top:.5rem;padding:.25rem 0;position:absolute;top:100%;left:0;right:0;overflow-y:auto}@media (width<=768px){.home-container[data-v-f4b6d9e4]{padding:1.5rem 1rem}.header-section[data-v-f4b6d9e4]{flex-direction:column;align-items:flex-start}.page-title[data-v-f4b6d9e4]{font-size:2rem}}.dropdown-menu[data-v-f4b6d9e4]{background:var(--bg-card);border:1px solid var(--border-subtle);min-width:140px;box-shadow:var(--shadow-lg);z-index:100;border-radius:8px;flex-direction:column;margin-top:.25rem;padding:.5rem 0;display:flex;position:absolute;top:100%;right:0}.dropdown-item[data-v-f4b6d9e4]{text-align:left;cursor:pointer;width:100%;color:var(--text-main);background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:background .2s;display:flex}.dropdown-item[data-v-f4b6d9e4]:hover{background:var(--bg-canvas)}.dropdown-item.delete-item[data-v-f4b6d9e4]{color:var(--error-main)}.dropdown-item.delete-item[data-v-f4b6d9e4]:hover{background:#ef44441a}.dropdown-fade-enter-active[data-v-f4b6d9e4],.dropdown-fade-leave-active[data-v-f4b6d9e4]{transition:opacity .2s,transform .2s}.dropdown-fade-enter-from[data-v-f4b6d9e4],.dropdown-fade-leave-to[data-v-f4b6d9e4]{opacity:0;transform:translateY(-5px)}.login-container[data-v-12b9e82c]{background:radial-gradient(circle at center, var(--bg-canvas) 0%, var(--bg-body) 100%);justify-content:center;align-items:center;min-height:calc(100vh - 80px - 6rem);padding:2rem;display:flex}.login-card[data-v-12b9e82c]{border-radius:20px;width:100%;max-width:400px;padding:2rem;box-shadow:0 10px 40px #0000001a}@media (prefers-color-scheme:dark){.login-card[data-v-12b9e82c]{box-shadow:0 10px 40px #0006}}.login-header[data-v-12b9e82c]{text-align:center;flex-direction:column;align-items:center;margin-bottom:2.5rem;display:flex}.logo-icon[data-v-12b9e82c]{background:var(--gradient-primary);width:48px;height:48px;box-shadow:var(--shadow-sm);color:#fff;border-radius:12px;justify-content:center;align-items:center;margin-bottom:1rem;display:flex}.nav-symbol[data-v-12b9e82c]{font-size:28px}.page-title[data-v-12b9e82c]{color:var(--text-main);margin:0 0 .5rem;font-size:1.75rem;font-weight:800}.subtitle[data-v-12b9e82c]{color:var(--text-muted);margin:0;font-size:1rem}.login-form[data-v-12b9e82c]{flex-direction:column;gap:1.5rem;display:flex}.form-group[data-v-12b9e82c]{flex-direction:column;gap:.5rem;display:flex}label[data-v-12b9e82c]{color:var(--text-main);font-size:.9rem;font-weight:500}.form-input[data-v-12b9e82c]{border:1px solid var(--border-strong);background:var(--bg-body);width:100%;color:var(--text-main);border-radius:8px;padding:.875rem 1rem;font-family:inherit;font-size:1rem;transition:all .2s}.form-input[data-v-12b9e82c]:focus{border-color:var(--primary-500);outline:none;box-shadow:0 0 0 3px #3b82f633}.error-message[data-v-12b9e82c]{color:var(--error-main);background:#ef44441a;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;font-weight:500;display:flex}.login-btn[data-v-12b9e82c]{width:100%;margin-top:.5rem;padding:.875rem;font-size:1.1rem;font-weight:600}.sso-divider[data-v-12b9e82c]{text-align:center;color:var(--text-muted);align-items:center;margin:.5rem 0 0;display:flex}.sso-divider[data-v-12b9e82c]:before,.sso-divider[data-v-12b9e82c]:after{content:"";border-bottom:1px solid var(--border-strong);flex:1}.sso-divider span[data-v-12b9e82c]{padding:0 10px;font-size:.9rem;font-weight:500}.sso-buttons[data-v-12b9e82c]{gap:1rem;display:flex}.sso-btn[data-v-12b9e82c]{background:var(--bg-surface);border:1px solid var(--border-strong);color:var(--text-main);cursor:pointer;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-size:1rem;font-weight:500;transition:all .2s;display:flex}.sso-btn[data-v-12b9e82c]:hover:not(:disabled){background:var(--bg-hover);border-color:var(--primary-400)}.sso-btn[data-v-12b9e82c]:disabled{opacity:.6;cursor:not-allowed}.sso-soon[data-v-12b9e82c]{text-transform:uppercase;letter-spacing:.03em;background:var(--bg-hover,#00000014);color:var(--text-muted);border-radius:999px;padding:.1rem .45rem;font-size:.65rem;font-weight:700}.spin[data-v-12b9e82c]{animation:1s linear infinite spin-12b9e82c}@keyframes spin-12b9e82c{to{transform:rotate(360deg)}}
