*{box-sizing:border-box;margin:0;padding:0}body,html{background-color:#000;overscroll-behavior-y:none}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root[data-theme=light]{--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#e9ecef;--text-primary:#333;--text-secondary:#666;--text-tertiary:#999;--border-color:#e0e0e0;--shadow:#0000001a;--shadow-hover:#00000026;--accent-color:#667eea;--accent-hover:#5568d3;--success-color:#4caf50;--error-color:#f44336;--warning-color:#ff9800}:root[data-theme=dark]{--bg-primary:#1a1a1a;--bg-secondary:#2d2d2d;--bg-tertiary:#3d3d3d;--text-primary:#fff;--text-secondary:#b0b0b0;--text-tertiary:grey;--border-color:#404040;--shadow:#0000004d;--shadow-hover:#0006;--accent-color:#7c8ef5;--accent-hover:#667eea;--success-color:#66bb6a;--error-color:#ef5350;--warning-color:#ffa726}.App{background-color:var(--bg-primary);color:var(--text-primary);display:flex;flex-direction:column;min-height:100vh;transition:background-color .3s ease,color .3s ease}.main-container{display:flex;flex:1 1;margin-top:70px}.content-area{background-color:var(--bg-primary);flex:1 1;margin-left:280px;min-height:calc(100vh - 70px);padding:20px 20px 20px 5px;transition:background-color .3s ease,margin-left .3s ease}.content-area.full-width{margin-left:0}@media (max-width:768px){.content-area{margin-left:0}}.header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#000000fa;border-bottom:1px solid #ffffff1a;left:0;min-height:70px;padding:1.5rem 0;position:fixed;right:0;top:0;transform:translateZ(0);-webkit-transform:translateZ(0);transition:all .3s ease;will-change:transform;z-index:100}.header-content{height:100%;justify-content:space-between;margin:0 auto;max-width:1600px;padding:0 3rem}.header-content,.logo{align-items:center;display:flex}.logo{color:#fff;font-size:1.25rem;font-weight:700;gap:.875rem;letter-spacing:.05em;text-decoration:none;text-transform:uppercase;transition:all .3s ease}.logo:hover{transform:translateX(4px)}.logo-icon{animation:pulse 2s ease-in-out infinite;display:inline-block;font-size:1.5rem}.logo h1{color:#fff;font-size:1.25rem;font-weight:700;letter-spacing:.15em;margin:0}.logo-number{display:inline-block;font-weight:900;margin:0 .05em;padding:0 .1em;position:relative;transform:translateZ(0);-webkit-transform:translateZ(0)}.logo-number-1{-webkit-text-fill-color:#0000;animation:glow1 2s ease-in-out infinite;background:linear-gradient(135deg,#ef4444,#f97316);-webkit-background-clip:text;background-clip:text;font-size:1.2em;text-shadow:0 0 20px #ef444480}.logo-number-0{-webkit-text-fill-color:#0000;animation:glow0 2s ease-in-out 1s infinite;background:linear-gradient(135deg,#3b82f6,#8b5cf6);-webkit-background-clip:text;background-clip:text;font-size:1.2em;text-shadow:0 0 20px #3b82f680}.header-nav{gap:8px}.header-nav,.user-info{align-items:center;display:flex}.user-info{border-left:1px solid #fff3;gap:1rem;margin-left:24px;padding-left:24px}.theme-toggle{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#fff3;border:1px solid #ffffff4d;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:40px;justify-content:center;min-width:44px;padding:8px 12px;transition:all .3s cubic-bezier(.4,0,.2,1)}.theme-toggle:hover{background-color:#ffffff4d;box-shadow:0 4px 12px #0003;transform:scale(1.1) rotate(15deg)}.user-name{font-size:.95rem;font-weight:600;letter-spacing:.2px}.user-role{background-color:#fff3;border-radius:12px;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:6px 12px}.logout-btn,.user-role{text-transform:uppercase}.logout-btn{background:#0000;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;letter-spacing:.02em;outline:none;overflow:hidden;padding:.625rem 1.5rem;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);will-change:transform}.logout-btn:focus-visible{border-color:#fff9;outline:2px solid #ffffff80;outline-offset:2px}.logout-btn:before{background:#ffffff1a;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease;width:0}.logout-btn:hover:before{height:300px;width:300px}.logout-btn:hover{background:#ffffff1a;border-color:#fff6;box-shadow:0 4px 12px #ffffff1a;transform:translateY(-2px)}.logout-btn:active{transform:translateY(0)}.nav-link{background:#0000;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;letter-spacing:.02em;outline:none;overflow:hidden;padding:.625rem 1.5rem;position:relative;text-decoration:none;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1);will-change:transform}.nav-link:focus-visible{border-color:#fff9;outline:2px solid #ffffff80;outline-offset:2px}.nav-link:before{background:#ffffff1a;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease;width:0}.nav-link:hover:before{height:300px;width:300px}.nav-link:hover{background:#ffffff1a;border-color:#fff6;box-shadow:0 4px 12px #ffffff1a;transform:translateY(-2px)}.nav-link:active{transform:translateY(0)}@media (max-width:768px){.header{min-height:60px;padding:1rem 0}.header-content{padding:0 1.5rem}.logo h1{font-size:1rem}.logo-icon{font-size:1.2rem}.header-nav{gap:6px}.nav-link{font-size:.75rem;padding:.5rem 1rem}.user-info{gap:8px;margin-left:12px;padding-left:12px}.user-name{display:none}.logout-btn{font-size:.75rem;padding:.5rem 1rem}}.sidebar{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#000000f2;border-right:1px solid #ffffff1a;box-shadow:4px 0 24px #0000004d;color:#fff;height:calc(100vh - 70px);left:0;overflow-x:hidden;overflow-y:auto;position:fixed;top:70px;transition:all .3s ease;width:280px;z-index:100}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#ffffff0d}.sidebar::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sidebar-header{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#000000f2;border-bottom:2px solid #ffffff1a;padding:28px 24px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.sidebar-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f59e0b,#ef4444 50%,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:1.4rem;font-weight:800;letter-spacing:.5px;margin:0;position:relative;text-transform:uppercase}.sidebar-header h2:after{background:linear-gradient(90deg,#f59e0b,#ef4444 50%,#8b5cf6);border-radius:2px;bottom:-8px;content:"";height:3px;left:0;position:absolute;width:60px}.sidebar-content{padding:16px 12px}.topic-item{background:#0000;border-left:4px solid #0000;border-radius:12px;cursor:pointer;margin:4px 8px;padding:14px 20px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.topic-item:before{background:linear-gradient(180deg,#f59e0b,#ef4444 50%,#8b5cf6);border-radius:12px 0 0 12px;bottom:0;content:"";left:0;position:absolute;top:0;transition:width .3s cubic-bezier(.4,0,.2,1);width:0}.topic-item:hover{background:#ffffff14;border-left-color:#0000;padding-left:24px;transform:translateX(4px)}.topic-item:hover:before{width:4px}.topic-item.active{background:#ffffff1f;border-left-color:#0000;box-shadow:0 4px 12px #f59e0b33;padding-left:24px}.topic-item.active:before{background:linear-gradient(180deg,#f59e0b,#ef4444 50%,#8b5cf6);width:4px}.topic-item.active .topic-name{color:#fff;font-weight:700}.topic-name{color:#ffffffd9;font-size:.95rem;font-weight:600;letter-spacing:.2px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1}.topic-item:hover .topic-name{color:#fff;font-weight:700}.sidebar-loading{color:#ffffffb3;font-size:.95rem;padding:40px 20px;text-align:center}@media (max-width:768px){.sidebar{transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:260px}.sidebar.open{box-shadow:4px 0 32px #00000080;transform:translateX(0)}.sidebar-header{padding:20px 20px 16px}.sidebar-header h2{font-size:1.2rem}.topic-item{margin:3px 6px;padding:12px 16px}.topic-item.active,.topic-item:hover{padding-left:20px}.topic-name{font-size:.9rem}}.loading-container{align-items:center;background:#000;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:2rem}.loading-logo{align-items:center;color:#fff;display:flex;font-size:2rem;font-weight:700;gap:.875rem;letter-spacing:.05em;margin-bottom:1rem;text-transform:uppercase}.loading-logo-icon{animation:pulse 2s ease-in-out infinite;display:inline-block;font-size:2.5rem}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.loading-logo h1{color:#fff;font-size:2rem;font-weight:700;letter-spacing:.15em;margin:0}.loading-logo-number{display:inline-block;font-weight:900;margin:0 .05em;padding:0 .1em;position:relative;transform:translateZ(0);-webkit-transform:translateZ(0)}.loading-logo-number-1{-webkit-text-fill-color:#0000;animation:glow1 2s ease-in-out infinite;background:linear-gradient(135deg,#ef4444,#f97316);-webkit-background-clip:text;background-clip:text;font-size:1.2em;text-shadow:0 0 20px #ef444480}.loading-logo-number-0{-webkit-text-fill-color:#0000;animation:glow0 2s ease-in-out 1s infinite;background:linear-gradient(135deg,#3b82f6,#8b5cf6);-webkit-background-clip:text;background-clip:text;font-size:1.2em;text-shadow:0 0 20px #3b82f680}@keyframes glow1{0%,to{filter:drop-shadow(0 0 5px rgba(239,68,68,.5));transform:scale(1) translateZ(0)}50%{filter:drop-shadow(0 0 15px rgba(239,68,68,.8));transform:scale(1.1) translateZ(0)}}@keyframes glow0{0%,to{filter:drop-shadow(0 0 5px rgba(59,130,246,.5));transform:scale(1) translateZ(0)}50%{filter:drop-shadow(0 0 15px rgba(59,130,246,.8));transform:scale(1.1) translateZ(0)}}.loading-message{animation:fadeInOut 2s ease-in-out infinite;color:#ffffffb3;font-size:1rem;margin-top:1rem;text-align:center}@keyframes fadeInOut{0%,to{opacity:.5}50%{opacity:1}}@media (max-width:768px){.loading-logo{font-size:1.5rem}.loading-logo-icon{font-size:2rem}.loading-logo h1{font-size:1.5rem}.loading-message{font-size:.875rem}}
/*# sourceMappingURL=main.0677c2a8.css.map*/