diff --git a/backend/__pycache__/app.cpython-311.pyc b/backend/__pycache__/app.cpython-311.pyc index f278478f5..54c45c3e0 100644 Binary files a/backend/__pycache__/app.cpython-311.pyc and b/backend/__pycache__/app.cpython-311.pyc differ diff --git a/backend/app.py b/backend/app.py index 61f2a668a..03b45bc63 100644 --- a/backend/app.py +++ b/backend/app.py @@ -828,6 +828,43 @@ def inject_current_route(): current_route = getattr(request, 'endpoint', None) or '' return {'current_route': current_route} +@app.context_processor +def inject_moment(): + """ + Injiziert eine moment-ähnliche Funktion für Template-Kompatibilität. + + Behebt UndefinedError: 'moment' is not defined in Templates. + Ersetzt moment.js durch native Python datetime-Funktionalität. + """ + def moment(): + """Mock moment() Funktion die ein datetime-ähnliches Objekt zurückgibt""" + class MomentLike: + def __init__(self): + self.dt = datetime.now() + + def format(self, format_str): + """Konvertiert moment.js Format-Strings zu Python strftime""" + # Moment.js -> Python strftime Mapping + format_mapping = { + 'DD.MM.YYYY': '%d.%m.%Y', + 'DD/MM/YYYY': '%d/%m/%Y', + 'YYYY-MM-DD': '%Y-%m-%d', + 'HH:mm': '%H:%M', + 'HH:mm:ss': '%H:%M:%S', + 'DD.MM.YYYY HH:mm': '%d.%m.%Y %H:%M' + } + + # Direkte Ersetzung wenn bekanntes Format + if format_str in format_mapping: + return self.dt.strftime(format_mapping[format_str]) + + # Fallback: Standard deutsche Formatierung + return self.dt.strftime('%d.%m.%Y') + + return MomentLike() + + return {'moment': moment} + @app.template_filter('format_datetime') def format_datetime_filter(value, format='%d.%m.%Y %H:%M'): """Template-Filter für Datums-Formatierung""" diff --git a/backend/backend/database/myp.db b/backend/backend/database/myp.db index 273d646aa..7ecd28080 100644 Binary files a/backend/backend/database/myp.db and b/backend/backend/database/myp.db differ diff --git a/backend/blueprints/__pycache__/admin_unified.cpython-311.pyc b/backend/blueprints/__pycache__/admin_unified.cpython-311.pyc index bf30f5603..45252a48a 100644 Binary files a/backend/blueprints/__pycache__/admin_unified.cpython-311.pyc and b/backend/blueprints/__pycache__/admin_unified.cpython-311.pyc differ diff --git a/backend/blueprints/admin_unified.py b/backend/blueprints/admin_unified.py index 79e8d11d7..746717734 100644 --- a/backend/blueprints/admin_unified.py +++ b/backend/blueprints/admin_unified.py @@ -213,94 +213,178 @@ def edit_user_page(user_id): flash("Fehler beim Laden der Benutzerdaten", "error") return redirect(url_for('admin.users_overview')) -@admin_blueprint.route("/printers") +@admin_blueprint.route("/users/create", methods=["POST"]) @admin_required -def printers_overview(): - """Druckerübersicht für Administratoren mit Hardware-Integration""" +def create_user(): + """Erstellt einen neuen Benutzer""" try: - from utils.hardware_integration import get_drucker_steuerung + # Form-Daten aus POST-Request + username = request.form.get('username', '').strip() + email = request.form.get('email', '').strip() + name = request.form.get('name', '').strip() + password = request.form.get('password', '') + role = request.form.get('role', 'user') + department = request.form.get('department', '').strip() + position = request.form.get('position', '').strip() + phone = request.form.get('phone', '').strip() + active = request.form.get('active') == 'on' + + # Validierung + if not username or not email or not password: + flash("Benutzername, E-Mail und Passwort sind erforderlich", "error") + return redirect(url_for('admin.add_user_page')) with get_cached_session() as db_session: - # Alle Drucker laden (nicht nur TBA Marienfelde) - printers = db_session.query(Printer).order_by(Printer.created_at.desc()).all() + # Prüfen ob Benutzer bereits existiert + existing_user = db_session.query(User).filter( + (User.username == username) | (User.email == email) + ).first() - # Hardware-Steuerung für Echtzeit-Status - drucker_steuerung = get_drucker_steuerung() - status_data = drucker_steuerung.template_daten_sammeln() + if existing_user: + flash("Benutzer mit diesem Namen oder E-Mail existiert bereits", "error") + return redirect(url_for('admin.add_user_page')) - # Erweiterte Drucker-Informationen mit Hardware-Status - enriched_printers = [] - online_count = 0 + # Neuen Benutzer erstellen + new_user = User( + username=username, + email=email, + name=name if name else None, + role=role, + department=department if department else None, + position=position if position else None, + phone=phone if phone else None, + active=active, + created_at=datetime.now(), + updated_at=datetime.now() + ) - for printer in printers: - printer_data = { - 'id': printer.id, - 'name': printer.name, - 'model': printer.model, - 'location': printer.location, - 'ip_address': printer.ip_address, - 'plug_ip': printer.plug_ip, - 'status': printer.status, - 'active': printer.active, - 'created_at': printer.created_at, - 'last_checked': printer.last_checked, - # Hardware-Status hinzufügen - 'plug_online': False, - 'plug_power_state': 'unknown', - 'energy_usage': {}, - 'has_active_jobs': False, - 'active_jobs_count': 0 - } - - # Hardware-Status aus Steuerung hinzufügen - if printer.id in status_data.get('drucker_status', {}): - hw_status = status_data['drucker_status'][printer.id] - printer_data.update({ - 'plug_online': hw_status.get('plug_online', False), - 'plug_power_state': hw_status.get('plug_state', 'unknown'), - 'energy_usage': hw_status.get('energy_usage', {}), - 'last_seen': hw_status.get('last_seen') - }) - - if hw_status.get('plug_online', False): - online_count += 1 - - # Aktive Jobs für diesen Drucker zählen - active_jobs_count = db_session.query(Job).filter( - Job.printer_id == printer.id, - Job.status.in_(['pending', 'printing', 'scheduled']) - ).count() - - printer_data['active_jobs_count'] = active_jobs_count - printer_data['has_active_jobs'] = active_jobs_count > 0 - - enriched_printers.append(printer_data) + # Passwort hashen + new_user.set_password(password) - # Grundlegende Statistiken sammeln - total_users = db_session.query(User).count() - total_printers = len(printers) - total_jobs = db_session.query(Job).count() + db_session.add(new_user) + db_session.commit() - # Aktive Jobs zählen - active_jobs = db_session.query(Job).filter( - Job.status.in_(['pending', 'printing', 'paused']) - ).count() - - stats = { - 'total_users': total_users, - 'total_printers': total_printers, - 'total_jobs': total_jobs, - 'active_jobs': active_jobs, - 'online_printers': online_count - } - - admin_logger.info(f"Druckerübersicht geladen von {current_user.username}: {total_printers} Drucker, {online_count} online") - return render_template('admin.html', stats=stats, printers=enriched_printers, active_tab='printers') + admin_logger.info(f"Neuer Benutzer '{username}' erstellt von {current_user.username}") + flash(f"Benutzer '{username}' erfolgreich erstellt", "success") + + return redirect(url_for('admin.users_overview')) except Exception as e: - admin_logger.error(f"Fehler beim Laden der Druckerübersicht: {str(e)}") - flash("Fehler beim Laden der Druckerdaten", "error") - return render_template('admin.html', stats={}, printers=[], active_tab='printers') + admin_logger.error(f"Fehler beim Erstellen des Benutzers: {str(e)}") + flash("Fehler beim Erstellen des Benutzers", "error") + return redirect(url_for('admin.add_user_page')) + +@admin_blueprint.route("/users//update", methods=["POST"]) +@admin_required +def update_user(user_id): + """Aktualisiert einen vorhandenen Benutzer""" + try: + with get_cached_session() as db_session: + user = db_session.query(User).filter(User.id == user_id).first() + + if not user: + flash("Benutzer nicht gefunden", "error") + return redirect(url_for('admin.users_overview')) + + # Aktualisierung verhindern wenn es der einzige Admin ist + if user.is_admin and request.form.get('role') != 'admin': + admin_count = db_session.query(User).filter(User.role == 'admin').count() + if admin_count <= 1: + flash("Kann den letzten Administrator nicht degradieren", "error") + return redirect(url_for('admin.edit_user_page', user_id=user_id)) + + # Form-Daten abrufen + username = request.form.get('username', '').strip() + email = request.form.get('email', '').strip() + name = request.form.get('name', '').strip() + role = request.form.get('role', 'user') + department = request.form.get('department', '').strip() + position = request.form.get('position', '').strip() + phone = request.form.get('phone', '').strip() + active = request.form.get('active') == 'on' + new_password = request.form.get('new_password', '').strip() + + # Validierung + if not username or not email: + flash("Benutzername und E-Mail sind erforderlich", "error") + return redirect(url_for('admin.edit_user_page', user_id=user_id)) + + # Prüfen ob Username/Email bereits von anderem Benutzer verwendet + existing_user = db_session.query(User).filter( + User.id != user_id, + (User.username == username) | (User.email == email) + ).first() + + if existing_user: + flash("Benutzername oder E-Mail bereits von anderem Benutzer verwendet", "error") + return redirect(url_for('admin.edit_user_page', user_id=user_id)) + + # Benutzer-Daten aktualisieren + user.username = username + user.email = email + user.name = name if name else None + user.role = role + user.department = department if department else None + user.position = position if position else None + user.phone = phone if phone else None + user.active = active + user.updated_at = datetime.now() + + # Passwort aktualisieren falls angegeben + if new_password: + user.set_password(new_password) + + db_session.commit() + + admin_logger.info(f"Benutzer '{username}' (ID: {user_id}) aktualisiert von {current_user.username}") + flash(f"Benutzer '{username}' erfolgreich aktualisiert", "success") + + return redirect(url_for('admin.users_overview')) + + except Exception as e: + admin_logger.error(f"Fehler beim Aktualisieren des Benutzers: {str(e)}") + flash("Fehler beim Aktualisieren des Benutzers", "error") + return redirect(url_for('admin.edit_user_page', user_id=user_id)) + +@admin_blueprint.route("/users//delete", methods=["POST"]) +@admin_required +def delete_user(user_id): + """Löscht einen Benutzer""" + try: + with get_cached_session() as db_session: + user = db_session.query(User).filter(User.id == user_id).first() + + if not user: + flash("Benutzer nicht gefunden", "error") + return redirect(url_for('admin.users_overview')) + + # Sich selbst löschen verhindern + if user.id == current_user.id: + flash("Sie können sich nicht selbst löschen", "error") + return redirect(url_for('admin.users_overview')) + + # Letzten Admin löschen verhindern + if user.is_admin: + admin_count = db_session.query(User).filter(User.role == 'admin').count() + if admin_count <= 1: + flash("Kann den letzten Administrator nicht löschen", "error") + return redirect(url_for('admin.users_overview')) + + username = user.username + + # Benutzer löschen + db_session.delete(user) + db_session.commit() + + admin_logger.info(f"Benutzer '{username}' (ID: {user_id}) gelöscht von {current_user.username}") + flash(f"Benutzer '{username}' erfolgreich gelöscht", "success") + + return redirect(url_for('admin.users_overview')) + + except Exception as e: + admin_logger.error(f"Fehler beim Löschen des Benutzers: {str(e)}") + flash("Fehler beim Löschen des Benutzers", "error") + return redirect(url_for('admin.users_overview')) @admin_blueprint.route("/printers/add") @admin_required @@ -329,7 +413,7 @@ def add_printer_page(): except Exception as e: admin_logger.error(f"Fehler beim Laden der Drucker-Hinzufügen-Seite: {str(e)}") flash("Fehler beim Laden der Seite", "error") - return redirect(url_for('admin.printers_overview')) + return redirect(url_for('admin.admin_dashboard')) @admin_blueprint.route("/printers//edit") @admin_required @@ -343,7 +427,7 @@ def edit_printer_page(printer_id): if not printer: flash("Drucker nicht gefunden", "error") - return redirect(url_for('admin.printers_overview')) + return redirect(url_for('admin.admin_dashboard')) # Hardware-Status für diesen Drucker abrufen drucker_steuerung = get_drucker_steuerung() @@ -408,7 +492,7 @@ def edit_printer_page(printer_id): except Exception as e: admin_logger.error(f"Fehler beim Laden der Drucker-Bearbeitung: {str(e)}") flash("Fehler beim Laden der Druckerdaten", "error") - return redirect(url_for('admin.printers_overview')) + return redirect(url_for('admin.admin_dashboard')) @admin_blueprint.route("/printers//manage") @admin_required @@ -422,7 +506,7 @@ def manage_printer_page(printer_id): if not printer: flash("Drucker nicht gefunden", "error") - return redirect(url_for('admin.printers_overview')) + return redirect(url_for('admin.admin_dashboard')) # Hardware-Steuerung für Echtzeit-Daten drucker_steuerung = get_drucker_steuerung() @@ -524,7 +608,7 @@ def manage_printer_page(printer_id): except Exception as e: admin_logger.error(f"Fehler beim Laden der Drucker-Verwaltung: {str(e)}") flash("Fehler beim Laden der Drucker-Verwaltung", "error") - return redirect(url_for('admin.printers_overview')) + return redirect(url_for('admin.admin_dashboard')) @admin_blueprint.route("/printers//settings") @admin_required @@ -538,7 +622,7 @@ def printer_settings_page(printer_id): if not printer: flash("Drucker nicht gefunden", "error") - return redirect(url_for('admin.printers_overview')) + return redirect(url_for('admin.admin_dashboard')) # Hardware-Status für erweiterte Einstellungen drucker_steuerung = get_drucker_steuerung() @@ -604,7 +688,137 @@ def printer_settings_page(printer_id): except Exception as e: admin_logger.error(f"Fehler beim Laden der Drucker-Einstellungen: {str(e)}") flash("Fehler beim Laden der Drucker-Einstellungen", "error") - return redirect(url_for('admin.printers_overview')) + return redirect(url_for('admin.admin_dashboard')) + +@admin_blueprint.route("/printers//configure") +@admin_required +def printer_configuration_page(printer_id): + """Erweiterte Drucker-Konfigurationsseite - entspricht showPrinterConfiguration() JavaScript-Funktion""" + try: + from utils.hardware_integration import get_drucker_steuerung + + with get_cached_session() as db_session: + printer = db_session.query(Printer).filter(Printer.id == printer_id).first() + + if not printer: + flash("Drucker nicht gefunden", "error") + return redirect(url_for('admin.admin_dashboard')) + + # Hardware-Status für erweiterte Konfiguration + drucker_steuerung = get_drucker_steuerung() + status_data = drucker_steuerung.template_daten_sammeln() + + # Umfassende Konfigurationsdaten sammeln + config_data = { + # Grunddaten des Druckers + 'printer': { + 'id': printer.id, + 'name': printer.name, + 'model': printer.model, + 'location': printer.location, + 'ip_address': printer.ip_address, + 'plug_ip': printer.plug_ip, + 'status': printer.status, + 'active': printer.active, + 'created_at': printer.created_at, + 'updated_at': printer.updated_at, + 'last_checked': printer.last_checked, + 'description': getattr(printer, 'description', ''), + }, + + # Hardware-Status und Energiemonitoring + 'hardware_status': status_data.get('drucker_status', {}).get(printer.id, {}), + + # Konfigurationskategorien + 'config_categories': { + 'basic': { + 'name': 'Grundeinstellungen', + 'description': 'Name, Modell, Standort', + 'icon': 'cog' + }, + 'network': { + 'name': 'Netzwerk-Konfiguration', + 'description': 'IP-Adressen, Verbindungseinstellungen', + 'icon': 'wifi' + }, + 'hardware': { + 'name': 'Hardware-Integration', + 'description': 'Smart-Plug, Sensoren, Monitoring', + 'icon': 'cpu' + }, + 'automation': { + 'name': 'Automatisierung', + 'description': 'Auto-Power, Zeitpläne, Benachrichtigungen', + 'icon': 'zap' + }, + 'maintenance': { + 'name': 'Wartung & Diagnostik', + 'description': 'Kalibrierung, Tests, Logs', + 'icon': 'tool' + }, + 'advanced': { + 'name': 'Erweiterte Optionen', + 'description': 'Experten-Einstellungen, Debug-Modi', + 'icon': 'settings' + } + }, + + # Live-Verbindungsstatus + 'connectivity': { + 'printer_reachable': False, + 'plug_reachable': False, + 'last_ping': None, + 'response_time': None + }, + + # Energieverbrauchshistorie + 'energy_history': [], + + # Verfügbare Aktionen + 'available_actions': [ + 'test_connection', + 'reset_settings', + 'calibrate', + 'factory_reset', + 'export_config', + 'import_config' + ] + } + + # Live-Konnektivitätstests + try: + if printer.plug_ip: + reachable, plug_status = drucker_steuerung.check_outlet_status(printer.plug_ip, printer_id=printer.id) + config_data['connectivity']['plug_reachable'] = reachable + config_data['connectivity']['plug_status'] = plug_status + except Exception as connectivity_error: + admin_logger.warning(f"Konnektivitätstest für Drucker {printer.id} fehlgeschlagen: {str(connectivity_error)}") + + # Grundlegende Statistiken für das Template + total_users = db_session.query(User).count() + total_printers = db_session.query(Printer).count() + total_jobs = db_session.query(Job).count() + active_jobs = db_session.query(Job).filter( + Job.status.in_(['pending', 'printing', 'paused']) + ).count() + + stats = { + 'total_users': total_users, + 'total_printers': total_printers, + 'total_jobs': total_jobs, + 'active_jobs': active_jobs + } + + admin_logger.info(f"Drucker-Konfiguration für '{printer.name}' aufgerufen von {current_user.username}") + return render_template('admin_printer_configuration.html', + config_data=config_data, + stats=stats, + active_tab='printers') + + except Exception as e: + admin_logger.error(f"Fehler beim Laden der Drucker-Konfiguration: {str(e)}") + flash("Fehler beim Laden der Drucker-Konfiguration", "error") + return redirect(url_for('admin.admin_dashboard')) @admin_blueprint.route("/guest-requests") @admin_required @@ -3839,3 +4053,202 @@ def get_users_api(): admin_api_logger.error(f"Fehler beim Abrufen der Benutzer: {str(e)}") return jsonify({"error": "Fehler beim Abrufen der Benutzer"}), 500 +# ===== SYSTEM ERROR RECOVERY ENDPOINTS ===== + +@admin_api_blueprint.route('/error-recovery/status', methods=['GET']) +@admin_required +def error_recovery_status(): + """ + Gibt den Status des Error-Recovery-Systems zurück. + + Returns: + JSON: Error-Recovery-Status und verfügbare Aktionen + """ + try: + admin_api_logger.debug(f"Error-Recovery-Status angefordert von {current_user.username}") + + # Sammle System-Gesundheitsdaten + with get_cached_session() as db_session: + # Aktuelle Datenbankverbindung testen + try: + db_session.execute(text("SELECT 1")) + db_health = True + except Exception: + db_health = False + + # Anzahl laufender Jobs prüfen + try: + running_jobs = db_session.query(Job).filter( + Job.status.in_(['printing', 'pending', 'paused']) + ).count() + except Exception: + running_jobs = 0 + + # Anzahl Drucker mit Problemen + try: + offline_printers = db_session.query(Printer).filter( + Printer.status.in_(['offline', 'error', 'unknown']) + ).count() + except Exception: + offline_printers = 0 + + # Verfügbare Recovery-Aktionen bestimmen + available_actions = [] + + if not db_health: + available_actions.extend(['restart_db', 'repair_db']) + + if running_jobs == 0: + available_actions.append('restart_services') + + if offline_printers > 0: + available_actions.append('reconnect_printers') + + # Immer verfügbar + available_actions.extend(['clear_cache', 'check_logs', 'system_health']) + + recovery_status = { + 'system_healthy': db_health and running_jobs == 0 and offline_printers == 0, + 'database_status': 'healthy' if db_health else 'error', + 'running_jobs': running_jobs, + 'offline_printers': offline_printers, + 'available_actions': available_actions, + 'last_check': datetime.now().isoformat() + } + + return jsonify({ + 'success': True, + 'recovery_status': recovery_status + }) + + except Exception as e: + admin_api_logger.error(f"Fehler beim Abrufen des Error-Recovery-Status: {str(e)}") + return jsonify({ + 'success': False, + 'error': f'Fehler beim Abrufen des Status: {str(e)}' + }), 500 + +@admin_api_blueprint.route('/error-recovery/toggle', methods=['POST']) +@admin_required +def error_recovery_toggle(): + """ + Schaltet Error-Recovery-Funktionen um oder führt Recovery-Aktionen durch. + + Request JSON: + action (str): Die auszuführende Aktion ('restart_db', 'clear_cache', etc.) + + Returns: + JSON: Erfolgsstatus und Details der durchgeführten Aktion + """ + try: + data = request.get_json() + action = data.get('action') + + if not action: + return jsonify({ + 'success': False, + 'error': 'Keine Aktion angegeben' + }), 400 + + admin_api_logger.info(f"Error-Recovery-Aktion '{action}' angefordert von {current_user.username}") + + result = { + 'action': action, + 'performed_by': current_user.username, + 'timestamp': datetime.now().isoformat(), + 'details': {} + } + + # Führe angeforderte Aktion durch + if action == 'clear_cache': + # Cache leeren + try: + from utils.utilities_collection import clear_cache + clear_cache() + result['details']['cache_cleared'] = True + result['message'] = 'Cache erfolgreich geleert' + except Exception as e: + result['details']['cache_error'] = str(e) + result['message'] = f'Fehler beim Cache-Leeren: {str(e)}' + + elif action == 'restart_db': + # Datenbank-Verbindungen neu starten + try: + from models import engine + engine.dispose() # Alle Verbindungen schließen + result['details']['db_connections_reset'] = True + result['message'] = 'Datenbankverbindungen erfolgreich neu gestartet' + except Exception as e: + result['details']['db_error'] = str(e) + result['message'] = f'Fehler beim DB-Neustart: {str(e)}' + + elif action == 'reconnect_printers': + # Drucker-Verbindungen neu aufbauen + try: + with get_cached_session() as db_session: + offline_printers = db_session.query(Printer).filter( + Printer.status.in_(['offline', 'error', 'unknown']) + ).all() + + reconnected = 0 + for printer in offline_printers: + try: + # Einfache Reconnect-Logic + printer.status = 'idle' + printer.last_checked = datetime.now() + reconnected += 1 + except Exception: + pass + + db_session.commit() + result['details']['printers_reconnected'] = reconnected + result['message'] = f'{reconnected} Drucker erfolgreich reconnected' + except Exception as e: + result['details']['reconnect_error'] = str(e) + result['message'] = f'Fehler beim Drucker-Reconnect: {str(e)}' + + elif action == 'system_health': + # System-Health-Check durchführen + try: + health_check = { + 'memory_usage': 'OK', + 'disk_space': 'OK', + 'database_size': 'OK', + 'service_status': 'OK' + } + + # Einfache Checks + try: + import psutil + memory_percent = psutil.virtual_memory().percent + health_check['memory_usage'] = f'{memory_percent:.1f}%' + + disk_percent = psutil.disk_usage('/').percent + health_check['disk_space'] = f'{disk_percent:.1f}%' + except ImportError: + health_check['system_monitoring'] = 'psutil nicht verfügbar' + + result['details']['health_check'] = health_check + result['message'] = 'System-Health-Check durchgeführt' + except Exception as e: + result['details']['health_error'] = str(e) + result['message'] = f'Fehler beim Health-Check: {str(e)}' + + else: + return jsonify({ + 'success': False, + 'error': f'Unbekannte Aktion: {action}' + }), 400 + + return jsonify({ + 'success': True, + 'result': result + }) + + except Exception as e: + admin_api_logger.error(f"Fehler bei Error-Recovery-Toggle: {str(e)}") + return jsonify({ + 'success': False, + 'error': f'Systemfehler: {str(e)}' + }), 500 + diff --git a/backend/database/myp.db.backup_20250620_004637 b/backend/database/myp.db.backup_20250620_004637 new file mode 100644 index 000000000..778c0aa17 Binary files /dev/null and b/backend/database/myp.db.backup_20250620_004637 differ diff --git a/backend/instance/sessions/01c627f6771cc3621bb4b2b014bf19b8_activity.pkl b/backend/instance/sessions/01c627f6771cc3621bb4b2b014bf19b8_activity.pkl new file mode 100644 index 000000000..852cae72a Binary files /dev/null and b/backend/instance/sessions/01c627f6771cc3621bb4b2b014bf19b8_activity.pkl differ diff --git a/backend/instance/sessions/02971768c32367a2421015b4535c3671_activity.pkl b/backend/instance/sessions/02971768c32367a2421015b4535c3671_activity.pkl new file mode 100644 index 000000000..4890ee51b Binary files /dev/null and b/backend/instance/sessions/02971768c32367a2421015b4535c3671_activity.pkl differ diff --git a/backend/instance/sessions/03bb55a11dffacb417ed88ff8b9b5d42_activity.pkl b/backend/instance/sessions/03bb55a11dffacb417ed88ff8b9b5d42_activity.pkl new file mode 100644 index 000000000..16eea7a03 Binary files /dev/null and b/backend/instance/sessions/03bb55a11dffacb417ed88ff8b9b5d42_activity.pkl differ diff --git a/backend/instance/sessions/041abe3be7e103f8256790184044fb55_activity.pkl b/backend/instance/sessions/041abe3be7e103f8256790184044fb55_activity.pkl new file mode 100644 index 000000000..dd44d4923 Binary files /dev/null and b/backend/instance/sessions/041abe3be7e103f8256790184044fb55_activity.pkl differ diff --git a/backend/instance/sessions/04306705be071f514f3fcb03753e74c1_activity.pkl b/backend/instance/sessions/04306705be071f514f3fcb03753e74c1_activity.pkl new file mode 100644 index 000000000..2f7f7c423 Binary files /dev/null and b/backend/instance/sessions/04306705be071f514f3fcb03753e74c1_activity.pkl differ diff --git a/backend/instance/sessions/04c85935e8278383feaa0acba926edd6_activity.pkl b/backend/instance/sessions/04c85935e8278383feaa0acba926edd6_activity.pkl new file mode 100644 index 000000000..2a9a1faf9 Binary files /dev/null and b/backend/instance/sessions/04c85935e8278383feaa0acba926edd6_activity.pkl differ diff --git a/backend/instance/sessions/05d1fbd2005493f27d8a20ddf2cfeac4_activity.pkl b/backend/instance/sessions/05d1fbd2005493f27d8a20ddf2cfeac4_activity.pkl new file mode 100644 index 000000000..10e4e82b7 Binary files /dev/null and b/backend/instance/sessions/05d1fbd2005493f27d8a20ddf2cfeac4_activity.pkl differ diff --git a/backend/instance/sessions/05f0bb5a8b642d8c399827e31f1f6cf3_activity.pkl b/backend/instance/sessions/05f0bb5a8b642d8c399827e31f1f6cf3_activity.pkl new file mode 100644 index 000000000..e59d366e1 Binary files /dev/null and b/backend/instance/sessions/05f0bb5a8b642d8c399827e31f1f6cf3_activity.pkl differ diff --git a/backend/instance/sessions/06027c6a6f018b5b61e7606eb7bd98f9_activity.pkl b/backend/instance/sessions/06027c6a6f018b5b61e7606eb7bd98f9_activity.pkl new file mode 100644 index 000000000..e365c2f96 Binary files /dev/null and b/backend/instance/sessions/06027c6a6f018b5b61e7606eb7bd98f9_activity.pkl differ diff --git a/backend/instance/sessions/06b46d4d69323b90aab57df9e17f0f23_activity.pkl b/backend/instance/sessions/06b46d4d69323b90aab57df9e17f0f23_activity.pkl new file mode 100644 index 000000000..d4fd23798 Binary files /dev/null and b/backend/instance/sessions/06b46d4d69323b90aab57df9e17f0f23_activity.pkl differ diff --git a/backend/instance/sessions/0821876c13017b0e6345b9be5bf30352_activity.pkl b/backend/instance/sessions/0821876c13017b0e6345b9be5bf30352_activity.pkl new file mode 100644 index 000000000..7fa8d70dd Binary files /dev/null and b/backend/instance/sessions/0821876c13017b0e6345b9be5bf30352_activity.pkl differ diff --git a/backend/instance/sessions/08e0c4deae287073c8efea60996f39ab_activity.pkl b/backend/instance/sessions/08e0c4deae287073c8efea60996f39ab_activity.pkl new file mode 100644 index 000000000..512ba62c2 Binary files /dev/null and b/backend/instance/sessions/08e0c4deae287073c8efea60996f39ab_activity.pkl differ diff --git a/backend/instance/sessions/0912c8635ed4c197987cc2a075af68b4_activity.pkl b/backend/instance/sessions/0912c8635ed4c197987cc2a075af68b4_activity.pkl new file mode 100644 index 000000000..afa2e1130 Binary files /dev/null and b/backend/instance/sessions/0912c8635ed4c197987cc2a075af68b4_activity.pkl differ diff --git a/backend/instance/sessions/098600e89958c23e4635fae2ec845b6b_activity.pkl b/backend/instance/sessions/098600e89958c23e4635fae2ec845b6b_activity.pkl new file mode 100644 index 000000000..ac165b551 Binary files /dev/null and b/backend/instance/sessions/098600e89958c23e4635fae2ec845b6b_activity.pkl differ diff --git a/backend/instance/sessions/09a79e493a882363adf52524479522a6_activity.pkl b/backend/instance/sessions/09a79e493a882363adf52524479522a6_activity.pkl new file mode 100644 index 000000000..f46ab0c28 Binary files /dev/null and b/backend/instance/sessions/09a79e493a882363adf52524479522a6_activity.pkl differ diff --git a/backend/instance/sessions/09c18f8f598a7d3bbb4fc0e0f1e01580_activity.pkl b/backend/instance/sessions/09c18f8f598a7d3bbb4fc0e0f1e01580_activity.pkl new file mode 100644 index 000000000..2fddb3dcc Binary files /dev/null and b/backend/instance/sessions/09c18f8f598a7d3bbb4fc0e0f1e01580_activity.pkl differ diff --git a/backend/instance/sessions/0a03ae7c009d8989e17571d00f02749e_activity.pkl b/backend/instance/sessions/0a03ae7c009d8989e17571d00f02749e_activity.pkl new file mode 100644 index 000000000..a23423fc8 Binary files /dev/null and b/backend/instance/sessions/0a03ae7c009d8989e17571d00f02749e_activity.pkl differ diff --git a/backend/instance/sessions/0ad572a0ab358b5ee67df0b94642f524_activity.pkl b/backend/instance/sessions/0ad572a0ab358b5ee67df0b94642f524_activity.pkl new file mode 100644 index 000000000..b663b9468 Binary files /dev/null and b/backend/instance/sessions/0ad572a0ab358b5ee67df0b94642f524_activity.pkl differ diff --git a/backend/instance/sessions/0ad71a2443c7305c3669c6c564e36055_activity.pkl b/backend/instance/sessions/0ad71a2443c7305c3669c6c564e36055_activity.pkl new file mode 100644 index 000000000..3f702bad7 Binary files /dev/null and b/backend/instance/sessions/0ad71a2443c7305c3669c6c564e36055_activity.pkl differ diff --git a/backend/instance/sessions/0b436f880588c84f7986c36420ec25fb_activity.pkl b/backend/instance/sessions/0b436f880588c84f7986c36420ec25fb_activity.pkl new file mode 100644 index 000000000..c129ef0fb Binary files /dev/null and b/backend/instance/sessions/0b436f880588c84f7986c36420ec25fb_activity.pkl differ diff --git a/backend/instance/sessions/0b4967b6d7b4f243ba90fd34ca5fb546_activity.pkl b/backend/instance/sessions/0b4967b6d7b4f243ba90fd34ca5fb546_activity.pkl new file mode 100644 index 000000000..1cd2e6f71 Binary files /dev/null and b/backend/instance/sessions/0b4967b6d7b4f243ba90fd34ca5fb546_activity.pkl differ diff --git a/backend/instance/sessions/0b8b23f86f21857a2b51d6d9783125a9_activity.pkl b/backend/instance/sessions/0b8b23f86f21857a2b51d6d9783125a9_activity.pkl new file mode 100644 index 000000000..1f0ce879d Binary files /dev/null and b/backend/instance/sessions/0b8b23f86f21857a2b51d6d9783125a9_activity.pkl differ diff --git a/backend/instance/sessions/0babe4528f343feb0d941d8b764bdcee_activity.pkl b/backend/instance/sessions/0babe4528f343feb0d941d8b764bdcee_activity.pkl new file mode 100644 index 000000000..bd6383fbf Binary files /dev/null and b/backend/instance/sessions/0babe4528f343feb0d941d8b764bdcee_activity.pkl differ diff --git a/backend/instance/sessions/0c08c3f62a0aed20f49173b7ff25dfc8_activity.pkl b/backend/instance/sessions/0c08c3f62a0aed20f49173b7ff25dfc8_activity.pkl new file mode 100644 index 000000000..0737042ba Binary files /dev/null and b/backend/instance/sessions/0c08c3f62a0aed20f49173b7ff25dfc8_activity.pkl differ diff --git a/backend/instance/sessions/0c5e95ba397ea636de75661e4b1693a5_activity.pkl b/backend/instance/sessions/0c5e95ba397ea636de75661e4b1693a5_activity.pkl new file mode 100644 index 000000000..cd6b781fc Binary files /dev/null and b/backend/instance/sessions/0c5e95ba397ea636de75661e4b1693a5_activity.pkl differ diff --git a/backend/instance/sessions/0d8246473a61b6486553cd27526499ab_activity.pkl b/backend/instance/sessions/0d8246473a61b6486553cd27526499ab_activity.pkl new file mode 100644 index 000000000..4e32d7a90 Binary files /dev/null and b/backend/instance/sessions/0d8246473a61b6486553cd27526499ab_activity.pkl differ diff --git a/backend/instance/sessions/0e0adc3b800a3cd4d1ddf76218a96f98_activity.pkl b/backend/instance/sessions/0e0adc3b800a3cd4d1ddf76218a96f98_activity.pkl new file mode 100644 index 000000000..47b01d678 Binary files /dev/null and b/backend/instance/sessions/0e0adc3b800a3cd4d1ddf76218a96f98_activity.pkl differ diff --git a/backend/instance/sessions/0e22859a89aa146e70bac6f31a873ac1_activity.pkl b/backend/instance/sessions/0e22859a89aa146e70bac6f31a873ac1_activity.pkl new file mode 100644 index 000000000..fca9f137e Binary files /dev/null and b/backend/instance/sessions/0e22859a89aa146e70bac6f31a873ac1_activity.pkl differ diff --git a/backend/instance/sessions/0e76d5558de7d5c8a065520e9d9d1ede_activity.pkl b/backend/instance/sessions/0e76d5558de7d5c8a065520e9d9d1ede_activity.pkl new file mode 100644 index 000000000..2ebe4d4ee Binary files /dev/null and b/backend/instance/sessions/0e76d5558de7d5c8a065520e9d9d1ede_activity.pkl differ diff --git a/backend/instance/sessions/0f1b18b2d721f2afabf1d7ea323683db_activity.pkl b/backend/instance/sessions/0f1b18b2d721f2afabf1d7ea323683db_activity.pkl new file mode 100644 index 000000000..a09b04e12 Binary files /dev/null and b/backend/instance/sessions/0f1b18b2d721f2afabf1d7ea323683db_activity.pkl differ diff --git a/backend/instance/sessions/0f9792816f1433b3b1a25813ceaee7f9_activity.pkl b/backend/instance/sessions/0f9792816f1433b3b1a25813ceaee7f9_activity.pkl new file mode 100644 index 000000000..603a0cfef Binary files /dev/null and b/backend/instance/sessions/0f9792816f1433b3b1a25813ceaee7f9_activity.pkl differ diff --git a/backend/instance/sessions/0fcc41022cb25c65136a10b048a011e8_activity.pkl b/backend/instance/sessions/0fcc41022cb25c65136a10b048a011e8_activity.pkl new file mode 100644 index 000000000..95169043e Binary files /dev/null and b/backend/instance/sessions/0fcc41022cb25c65136a10b048a011e8_activity.pkl differ diff --git a/backend/instance/sessions/0fce43372e0cff8eab5b6d143423be70_activity.pkl b/backend/instance/sessions/0fce43372e0cff8eab5b6d143423be70_activity.pkl new file mode 100644 index 000000000..cfd2411fe Binary files /dev/null and b/backend/instance/sessions/0fce43372e0cff8eab5b6d143423be70_activity.pkl differ diff --git a/backend/instance/sessions/0fd7aaa1e20eb19de8b5c3336945111b_activity.pkl b/backend/instance/sessions/0fd7aaa1e20eb19de8b5c3336945111b_activity.pkl new file mode 100644 index 000000000..be6429048 Binary files /dev/null and b/backend/instance/sessions/0fd7aaa1e20eb19de8b5c3336945111b_activity.pkl differ diff --git a/backend/instance/sessions/0fdc05cd21497d757bda8eeb80faa45f_activity.pkl b/backend/instance/sessions/0fdc05cd21497d757bda8eeb80faa45f_activity.pkl new file mode 100644 index 000000000..5d51fc9b4 Binary files /dev/null and b/backend/instance/sessions/0fdc05cd21497d757bda8eeb80faa45f_activity.pkl differ diff --git a/backend/instance/sessions/10001ec16b65fdb56dd9cd0d94434747_activity.pkl b/backend/instance/sessions/10001ec16b65fdb56dd9cd0d94434747_activity.pkl new file mode 100644 index 000000000..1c7a024a6 Binary files /dev/null and b/backend/instance/sessions/10001ec16b65fdb56dd9cd0d94434747_activity.pkl differ diff --git a/backend/instance/sessions/109e81c71622f2b2d6eccfc2b8112ac2_activity.pkl b/backend/instance/sessions/109e81c71622f2b2d6eccfc2b8112ac2_activity.pkl new file mode 100644 index 000000000..0fe0516a1 Binary files /dev/null and b/backend/instance/sessions/109e81c71622f2b2d6eccfc2b8112ac2_activity.pkl differ diff --git a/backend/instance/sessions/113d8e76858d876e60670127a0cbe6ae_activity.pkl b/backend/instance/sessions/113d8e76858d876e60670127a0cbe6ae_activity.pkl new file mode 100644 index 000000000..39858a57d Binary files /dev/null and b/backend/instance/sessions/113d8e76858d876e60670127a0cbe6ae_activity.pkl differ diff --git a/backend/instance/sessions/116cc33afa2e03043fad320270b1c206_activity.pkl b/backend/instance/sessions/116cc33afa2e03043fad320270b1c206_activity.pkl new file mode 100644 index 000000000..aae4198ec Binary files /dev/null and b/backend/instance/sessions/116cc33afa2e03043fad320270b1c206_activity.pkl differ diff --git a/backend/instance/sessions/11a6790d1ed0a90de2b2444f6a410995_activity.pkl b/backend/instance/sessions/11a6790d1ed0a90de2b2444f6a410995_activity.pkl new file mode 100644 index 000000000..dbee5e278 Binary files /dev/null and b/backend/instance/sessions/11a6790d1ed0a90de2b2444f6a410995_activity.pkl differ diff --git a/backend/instance/sessions/11f0e718481f25421b918759d955260f_activity.pkl b/backend/instance/sessions/11f0e718481f25421b918759d955260f_activity.pkl new file mode 100644 index 000000000..95a1c42bb Binary files /dev/null and b/backend/instance/sessions/11f0e718481f25421b918759d955260f_activity.pkl differ diff --git a/backend/instance/sessions/123000e4b3a3b026c940abc8c006f98c_activity.pkl b/backend/instance/sessions/123000e4b3a3b026c940abc8c006f98c_activity.pkl new file mode 100644 index 000000000..6edae00c5 Binary files /dev/null and b/backend/instance/sessions/123000e4b3a3b026c940abc8c006f98c_activity.pkl differ diff --git a/backend/instance/sessions/1297687541e0e8024c8c238f19467d25_activity.pkl b/backend/instance/sessions/1297687541e0e8024c8c238f19467d25_activity.pkl new file mode 100644 index 000000000..01156a9da Binary files /dev/null and b/backend/instance/sessions/1297687541e0e8024c8c238f19467d25_activity.pkl differ diff --git a/backend/instance/sessions/12ce7e3ed820be55edb9fe9b2b7a7448_activity.pkl b/backend/instance/sessions/12ce7e3ed820be55edb9fe9b2b7a7448_activity.pkl new file mode 100644 index 000000000..58fad0bcc Binary files /dev/null and b/backend/instance/sessions/12ce7e3ed820be55edb9fe9b2b7a7448_activity.pkl differ diff --git a/backend/instance/sessions/1349ea057aa8de5d202e402ec9c515f0_activity.pkl b/backend/instance/sessions/1349ea057aa8de5d202e402ec9c515f0_activity.pkl new file mode 100644 index 000000000..70938d12e Binary files /dev/null and b/backend/instance/sessions/1349ea057aa8de5d202e402ec9c515f0_activity.pkl differ diff --git a/backend/instance/sessions/1350b596d46a3fd58c72f526a4918852_activity.pkl b/backend/instance/sessions/1350b596d46a3fd58c72f526a4918852_activity.pkl new file mode 100644 index 000000000..cb74023d7 Binary files /dev/null and b/backend/instance/sessions/1350b596d46a3fd58c72f526a4918852_activity.pkl differ diff --git a/backend/instance/sessions/13c2a5864d6282ead2e2486f98b588a2_activity.pkl b/backend/instance/sessions/13c2a5864d6282ead2e2486f98b588a2_activity.pkl new file mode 100644 index 000000000..ee641ce97 Binary files /dev/null and b/backend/instance/sessions/13c2a5864d6282ead2e2486f98b588a2_activity.pkl differ diff --git a/backend/instance/sessions/13d3d807c78c3f07900ca226b5464a5c_activity.pkl b/backend/instance/sessions/13d3d807c78c3f07900ca226b5464a5c_activity.pkl new file mode 100644 index 000000000..65965356a Binary files /dev/null and b/backend/instance/sessions/13d3d807c78c3f07900ca226b5464a5c_activity.pkl differ diff --git a/backend/instance/sessions/13d41094780b4688cd38a6dba2951998_activity.pkl b/backend/instance/sessions/13d41094780b4688cd38a6dba2951998_activity.pkl new file mode 100644 index 000000000..2cafdb4ed Binary files /dev/null and b/backend/instance/sessions/13d41094780b4688cd38a6dba2951998_activity.pkl differ diff --git a/backend/instance/sessions/13ee4053cada8b5d69ce7e36b47cf454_activity.pkl b/backend/instance/sessions/13ee4053cada8b5d69ce7e36b47cf454_activity.pkl new file mode 100644 index 000000000..a9dda1a39 Binary files /dev/null and b/backend/instance/sessions/13ee4053cada8b5d69ce7e36b47cf454_activity.pkl differ diff --git a/backend/instance/sessions/144f02a7f41018dfe8c429c46e47d349_activity.pkl b/backend/instance/sessions/144f02a7f41018dfe8c429c46e47d349_activity.pkl new file mode 100644 index 000000000..ec31789f4 Binary files /dev/null and b/backend/instance/sessions/144f02a7f41018dfe8c429c46e47d349_activity.pkl differ diff --git a/backend/instance/sessions/158f91cc8267b240ddce8900a679aec8_activity.pkl b/backend/instance/sessions/158f91cc8267b240ddce8900a679aec8_activity.pkl new file mode 100644 index 000000000..66893b426 Binary files /dev/null and b/backend/instance/sessions/158f91cc8267b240ddce8900a679aec8_activity.pkl differ diff --git a/backend/instance/sessions/15b8611cee0c69b8ad05fade85121201_activity.pkl b/backend/instance/sessions/15b8611cee0c69b8ad05fade85121201_activity.pkl new file mode 100644 index 000000000..6158cd54a Binary files /dev/null and b/backend/instance/sessions/15b8611cee0c69b8ad05fade85121201_activity.pkl differ diff --git a/backend/instance/sessions/15d0979bbce9cdf1b7ccfc5da10c11c7_activity.pkl b/backend/instance/sessions/15d0979bbce9cdf1b7ccfc5da10c11c7_activity.pkl new file mode 100644 index 000000000..7169e37c1 Binary files /dev/null and b/backend/instance/sessions/15d0979bbce9cdf1b7ccfc5da10c11c7_activity.pkl differ diff --git a/backend/instance/sessions/15ec895ee9521a7674adb92e155142c2_activity.pkl b/backend/instance/sessions/15ec895ee9521a7674adb92e155142c2_activity.pkl new file mode 100644 index 000000000..4fcaa3d0e Binary files /dev/null and b/backend/instance/sessions/15ec895ee9521a7674adb92e155142c2_activity.pkl differ diff --git a/backend/instance/sessions/15fbf37bf255403c28df3352cc2cb0af_activity.pkl b/backend/instance/sessions/15fbf37bf255403c28df3352cc2cb0af_activity.pkl new file mode 100644 index 000000000..76350a499 Binary files /dev/null and b/backend/instance/sessions/15fbf37bf255403c28df3352cc2cb0af_activity.pkl differ diff --git a/backend/instance/sessions/162fb6cf46143cd329ca4c751ab121d4_activity.pkl b/backend/instance/sessions/162fb6cf46143cd329ca4c751ab121d4_activity.pkl new file mode 100644 index 000000000..a63b18aac Binary files /dev/null and b/backend/instance/sessions/162fb6cf46143cd329ca4c751ab121d4_activity.pkl differ diff --git a/backend/instance/sessions/169424bf4cf5abd73af1e81fbc793847_activity.pkl b/backend/instance/sessions/169424bf4cf5abd73af1e81fbc793847_activity.pkl new file mode 100644 index 000000000..cc20d609e Binary files /dev/null and b/backend/instance/sessions/169424bf4cf5abd73af1e81fbc793847_activity.pkl differ diff --git a/backend/instance/sessions/1697b55797cc0e8aaa77e42fa7c871b1_activity.pkl b/backend/instance/sessions/1697b55797cc0e8aaa77e42fa7c871b1_activity.pkl new file mode 100644 index 000000000..4e0c718ce Binary files /dev/null and b/backend/instance/sessions/1697b55797cc0e8aaa77e42fa7c871b1_activity.pkl differ diff --git a/backend/instance/sessions/17e81fd7ee5c6ef81325e938f1d769bf_activity.pkl b/backend/instance/sessions/17e81fd7ee5c6ef81325e938f1d769bf_activity.pkl new file mode 100644 index 000000000..3894b704c Binary files /dev/null and b/backend/instance/sessions/17e81fd7ee5c6ef81325e938f1d769bf_activity.pkl differ diff --git a/backend/instance/sessions/180ca4de94cddb966e47763462afc0a7_activity.pkl b/backend/instance/sessions/180ca4de94cddb966e47763462afc0a7_activity.pkl new file mode 100644 index 000000000..1c638e019 Binary files /dev/null and b/backend/instance/sessions/180ca4de94cddb966e47763462afc0a7_activity.pkl differ diff --git a/backend/instance/sessions/184620701fcb29ecc87295cc6edb97d0_activity.pkl b/backend/instance/sessions/184620701fcb29ecc87295cc6edb97d0_activity.pkl new file mode 100644 index 000000000..35aa6a75b Binary files /dev/null and b/backend/instance/sessions/184620701fcb29ecc87295cc6edb97d0_activity.pkl differ diff --git a/backend/instance/sessions/191c92b1a648daf6a2c45a65c97b6756_activity.pkl b/backend/instance/sessions/191c92b1a648daf6a2c45a65c97b6756_activity.pkl new file mode 100644 index 000000000..ffe206a04 Binary files /dev/null and b/backend/instance/sessions/191c92b1a648daf6a2c45a65c97b6756_activity.pkl differ diff --git a/backend/instance/sessions/19bfb214f7775be31637826891574709_activity.pkl b/backend/instance/sessions/19bfb214f7775be31637826891574709_activity.pkl new file mode 100644 index 000000000..0dbf5f252 Binary files /dev/null and b/backend/instance/sessions/19bfb214f7775be31637826891574709_activity.pkl differ diff --git a/backend/instance/sessions/19c2bc9b1d681e6e5abcb87ffdebbe20_activity.pkl b/backend/instance/sessions/19c2bc9b1d681e6e5abcb87ffdebbe20_activity.pkl new file mode 100644 index 000000000..126c9921c Binary files /dev/null and b/backend/instance/sessions/19c2bc9b1d681e6e5abcb87ffdebbe20_activity.pkl differ diff --git a/backend/instance/sessions/19f070b81dbeb9f70c063372dd5dcc0d_activity.pkl b/backend/instance/sessions/19f070b81dbeb9f70c063372dd5dcc0d_activity.pkl new file mode 100644 index 000000000..aa0abee18 Binary files /dev/null and b/backend/instance/sessions/19f070b81dbeb9f70c063372dd5dcc0d_activity.pkl differ diff --git a/backend/instance/sessions/1a37f6577c65cd066cb141c3fd382919_activity.pkl b/backend/instance/sessions/1a37f6577c65cd066cb141c3fd382919_activity.pkl new file mode 100644 index 000000000..933fb3c14 Binary files /dev/null and b/backend/instance/sessions/1a37f6577c65cd066cb141c3fd382919_activity.pkl differ diff --git a/backend/instance/sessions/1a3880ff909f82078deeab83fd740d74_activity.pkl b/backend/instance/sessions/1a3880ff909f82078deeab83fd740d74_activity.pkl new file mode 100644 index 000000000..17f903de1 Binary files /dev/null and b/backend/instance/sessions/1a3880ff909f82078deeab83fd740d74_activity.pkl differ diff --git a/backend/instance/sessions/1a7de5f3556aead6e6d8f635d11a6d10_activity.pkl b/backend/instance/sessions/1a7de5f3556aead6e6d8f635d11a6d10_activity.pkl new file mode 100644 index 000000000..93bad26f0 Binary files /dev/null and b/backend/instance/sessions/1a7de5f3556aead6e6d8f635d11a6d10_activity.pkl differ diff --git a/backend/instance/sessions/1b13530727b4e943c049175233a913a4_activity.pkl b/backend/instance/sessions/1b13530727b4e943c049175233a913a4_activity.pkl new file mode 100644 index 000000000..e1ac9f187 Binary files /dev/null and b/backend/instance/sessions/1b13530727b4e943c049175233a913a4_activity.pkl differ diff --git a/backend/instance/sessions/1b35ebda2bcce4eaa9602a9b9346670b_activity.pkl b/backend/instance/sessions/1b35ebda2bcce4eaa9602a9b9346670b_activity.pkl new file mode 100644 index 000000000..3c9044417 Binary files /dev/null and b/backend/instance/sessions/1b35ebda2bcce4eaa9602a9b9346670b_activity.pkl differ diff --git a/backend/instance/sessions/1b62fddca0b62f8e5a90e1052a002c0e_activity.pkl b/backend/instance/sessions/1b62fddca0b62f8e5a90e1052a002c0e_activity.pkl new file mode 100644 index 000000000..46856faf7 Binary files /dev/null and b/backend/instance/sessions/1b62fddca0b62f8e5a90e1052a002c0e_activity.pkl differ diff --git a/backend/instance/sessions/1bc85c873a1c9bcc404b9b9a5c55311b_activity.pkl b/backend/instance/sessions/1bc85c873a1c9bcc404b9b9a5c55311b_activity.pkl new file mode 100644 index 000000000..12898e337 Binary files /dev/null and b/backend/instance/sessions/1bc85c873a1c9bcc404b9b9a5c55311b_activity.pkl differ diff --git a/backend/instance/sessions/1c20e4169656530b233cd305ed6c34a3_activity.pkl b/backend/instance/sessions/1c20e4169656530b233cd305ed6c34a3_activity.pkl new file mode 100644 index 000000000..b29a217a6 Binary files /dev/null and b/backend/instance/sessions/1c20e4169656530b233cd305ed6c34a3_activity.pkl differ diff --git a/backend/instance/sessions/1c8067636e42797fb685cc6676b4638b_activity.pkl b/backend/instance/sessions/1c8067636e42797fb685cc6676b4638b_activity.pkl new file mode 100644 index 000000000..1a5e8d8a6 Binary files /dev/null and b/backend/instance/sessions/1c8067636e42797fb685cc6676b4638b_activity.pkl differ diff --git a/backend/instance/sessions/1d5b9db27488e02f25339993d986e88d_activity.pkl b/backend/instance/sessions/1d5b9db27488e02f25339993d986e88d_activity.pkl new file mode 100644 index 000000000..310c1dda1 Binary files /dev/null and b/backend/instance/sessions/1d5b9db27488e02f25339993d986e88d_activity.pkl differ diff --git a/backend/instance/sessions/1dfbe1be734b272d0d5875eb9b296154_activity.pkl b/backend/instance/sessions/1dfbe1be734b272d0d5875eb9b296154_activity.pkl new file mode 100644 index 000000000..b3e547b2f Binary files /dev/null and b/backend/instance/sessions/1dfbe1be734b272d0d5875eb9b296154_activity.pkl differ diff --git a/backend/instance/sessions/1e77d6c44ab8cef5642171ccbf8785d7_activity.pkl b/backend/instance/sessions/1e77d6c44ab8cef5642171ccbf8785d7_activity.pkl new file mode 100644 index 000000000..b37fc2cad Binary files /dev/null and b/backend/instance/sessions/1e77d6c44ab8cef5642171ccbf8785d7_activity.pkl differ diff --git a/backend/instance/sessions/1f1a353fb0cf014e44a69f2ffd4f3759_activity.pkl b/backend/instance/sessions/1f1a353fb0cf014e44a69f2ffd4f3759_activity.pkl new file mode 100644 index 000000000..f2c9ae43d Binary files /dev/null and b/backend/instance/sessions/1f1a353fb0cf014e44a69f2ffd4f3759_activity.pkl differ diff --git a/backend/instance/sessions/1f36eff604a59b3af29e188d13580ff0_activity.pkl b/backend/instance/sessions/1f36eff604a59b3af29e188d13580ff0_activity.pkl new file mode 100644 index 000000000..3ee807337 Binary files /dev/null and b/backend/instance/sessions/1f36eff604a59b3af29e188d13580ff0_activity.pkl differ diff --git a/backend/instance/sessions/1f9ad74ffaedb41643746ad69af26bcf_activity.pkl b/backend/instance/sessions/1f9ad74ffaedb41643746ad69af26bcf_activity.pkl new file mode 100644 index 000000000..a79eb93c5 Binary files /dev/null and b/backend/instance/sessions/1f9ad74ffaedb41643746ad69af26bcf_activity.pkl differ diff --git a/backend/instance/sessions/2042ceaf37d7123199d6db749392c82d_activity.pkl b/backend/instance/sessions/2042ceaf37d7123199d6db749392c82d_activity.pkl new file mode 100644 index 000000000..58d748a4c Binary files /dev/null and b/backend/instance/sessions/2042ceaf37d7123199d6db749392c82d_activity.pkl differ diff --git a/backend/instance/sessions/20aacc6dd7d7827620e34996525fb74a_activity.pkl b/backend/instance/sessions/20aacc6dd7d7827620e34996525fb74a_activity.pkl new file mode 100644 index 000000000..6b092037a Binary files /dev/null and b/backend/instance/sessions/20aacc6dd7d7827620e34996525fb74a_activity.pkl differ diff --git a/backend/instance/sessions/2102f7dcb8ecc82c176d87b916dd564d_activity.pkl b/backend/instance/sessions/2102f7dcb8ecc82c176d87b916dd564d_activity.pkl new file mode 100644 index 000000000..24a5ac1af Binary files /dev/null and b/backend/instance/sessions/2102f7dcb8ecc82c176d87b916dd564d_activity.pkl differ diff --git a/backend/instance/sessions/22064a199dd3a06d7a4a1636cc96e65a_activity.pkl b/backend/instance/sessions/22064a199dd3a06d7a4a1636cc96e65a_activity.pkl new file mode 100644 index 000000000..de7b400da Binary files /dev/null and b/backend/instance/sessions/22064a199dd3a06d7a4a1636cc96e65a_activity.pkl differ diff --git a/backend/instance/sessions/22ac185cf0bdcbf9995cd6d0ecd07a46_activity.pkl b/backend/instance/sessions/22ac185cf0bdcbf9995cd6d0ecd07a46_activity.pkl new file mode 100644 index 000000000..5076bf8dd Binary files /dev/null and b/backend/instance/sessions/22ac185cf0bdcbf9995cd6d0ecd07a46_activity.pkl differ diff --git a/backend/instance/sessions/22bab770e3aa33c878f9c8e8a75b5b78_activity.pkl b/backend/instance/sessions/22bab770e3aa33c878f9c8e8a75b5b78_activity.pkl new file mode 100644 index 000000000..b2c2d1dc4 Binary files /dev/null and b/backend/instance/sessions/22bab770e3aa33c878f9c8e8a75b5b78_activity.pkl differ diff --git a/backend/instance/sessions/2454e0527c10f3d314905ebe58f0d884_activity.pkl b/backend/instance/sessions/2454e0527c10f3d314905ebe58f0d884_activity.pkl new file mode 100644 index 000000000..df0a29b6f Binary files /dev/null and b/backend/instance/sessions/2454e0527c10f3d314905ebe58f0d884_activity.pkl differ diff --git a/backend/instance/sessions/24578477249b2d02dc26fa649798c08d_activity.pkl b/backend/instance/sessions/24578477249b2d02dc26fa649798c08d_activity.pkl new file mode 100644 index 000000000..aa54c5244 Binary files /dev/null and b/backend/instance/sessions/24578477249b2d02dc26fa649798c08d_activity.pkl differ diff --git a/backend/instance/sessions/24ccdf1df77a33b0bb046c4c770b603f_activity.pkl b/backend/instance/sessions/24ccdf1df77a33b0bb046c4c770b603f_activity.pkl new file mode 100644 index 000000000..06747e5f4 Binary files /dev/null and b/backend/instance/sessions/24ccdf1df77a33b0bb046c4c770b603f_activity.pkl differ diff --git a/backend/instance/sessions/25044f22e55dc36fd4348fdfad7b8dc8_activity.pkl b/backend/instance/sessions/25044f22e55dc36fd4348fdfad7b8dc8_activity.pkl new file mode 100644 index 000000000..4615625ce Binary files /dev/null and b/backend/instance/sessions/25044f22e55dc36fd4348fdfad7b8dc8_activity.pkl differ diff --git a/backend/instance/sessions/254351be306a1968d78abb0ab87b1d93_activity.pkl b/backend/instance/sessions/254351be306a1968d78abb0ab87b1d93_activity.pkl new file mode 100644 index 000000000..29c093d60 Binary files /dev/null and b/backend/instance/sessions/254351be306a1968d78abb0ab87b1d93_activity.pkl differ diff --git a/backend/instance/sessions/255464f9757c45bbd60b89c938cb20a2_activity.pkl b/backend/instance/sessions/255464f9757c45bbd60b89c938cb20a2_activity.pkl new file mode 100644 index 000000000..d8d857536 Binary files /dev/null and b/backend/instance/sessions/255464f9757c45bbd60b89c938cb20a2_activity.pkl differ diff --git a/backend/instance/sessions/25c0b46dd4d5b4e6562fe26ab63cebb7_activity.pkl b/backend/instance/sessions/25c0b46dd4d5b4e6562fe26ab63cebb7_activity.pkl new file mode 100644 index 000000000..843a02a2d Binary files /dev/null and b/backend/instance/sessions/25c0b46dd4d5b4e6562fe26ab63cebb7_activity.pkl differ diff --git a/backend/instance/sessions/264dc08e9a8f95eab1593df6a3c02fba_activity.pkl b/backend/instance/sessions/264dc08e9a8f95eab1593df6a3c02fba_activity.pkl new file mode 100644 index 000000000..3ed0538ee Binary files /dev/null and b/backend/instance/sessions/264dc08e9a8f95eab1593df6a3c02fba_activity.pkl differ diff --git a/backend/instance/sessions/26a2b5d08d38bc28cb2361978c8e4aa9_activity.pkl b/backend/instance/sessions/26a2b5d08d38bc28cb2361978c8e4aa9_activity.pkl new file mode 100644 index 000000000..e72a98fc9 Binary files /dev/null and b/backend/instance/sessions/26a2b5d08d38bc28cb2361978c8e4aa9_activity.pkl differ diff --git a/backend/instance/sessions/2761a2dbb1fa7401e1e85972a3fab026_activity.pkl b/backend/instance/sessions/2761a2dbb1fa7401e1e85972a3fab026_activity.pkl new file mode 100644 index 000000000..24c1742ad Binary files /dev/null and b/backend/instance/sessions/2761a2dbb1fa7401e1e85972a3fab026_activity.pkl differ diff --git a/backend/instance/sessions/277bf0736af68a48eae908da1bf7b525_activity.pkl b/backend/instance/sessions/277bf0736af68a48eae908da1bf7b525_activity.pkl new file mode 100644 index 000000000..fe27341d7 Binary files /dev/null and b/backend/instance/sessions/277bf0736af68a48eae908da1bf7b525_activity.pkl differ diff --git a/backend/instance/sessions/2858ef1b28a3c05e4aec3c034df37673_activity.pkl b/backend/instance/sessions/2858ef1b28a3c05e4aec3c034df37673_activity.pkl new file mode 100644 index 000000000..e6104e8c7 Binary files /dev/null and b/backend/instance/sessions/2858ef1b28a3c05e4aec3c034df37673_activity.pkl differ diff --git a/backend/instance/sessions/288742848ba02a723d3eff6e0b019c23_activity.pkl b/backend/instance/sessions/288742848ba02a723d3eff6e0b019c23_activity.pkl new file mode 100644 index 000000000..f690c687a Binary files /dev/null and b/backend/instance/sessions/288742848ba02a723d3eff6e0b019c23_activity.pkl differ diff --git a/backend/instance/sessions/2a521a1128f9e43c021582a4cf1ee334_activity.pkl b/backend/instance/sessions/2a521a1128f9e43c021582a4cf1ee334_activity.pkl new file mode 100644 index 000000000..d8a7c510b Binary files /dev/null and b/backend/instance/sessions/2a521a1128f9e43c021582a4cf1ee334_activity.pkl differ diff --git a/backend/instance/sessions/2a59c1e649583db3b7ceaa3d709550c9_activity.pkl b/backend/instance/sessions/2a59c1e649583db3b7ceaa3d709550c9_activity.pkl new file mode 100644 index 000000000..40d42303b Binary files /dev/null and b/backend/instance/sessions/2a59c1e649583db3b7ceaa3d709550c9_activity.pkl differ diff --git a/backend/instance/sessions/2ab8a5ce33e16e220f3dfb96fc4e9709_activity.pkl b/backend/instance/sessions/2ab8a5ce33e16e220f3dfb96fc4e9709_activity.pkl new file mode 100644 index 000000000..1d299284c Binary files /dev/null and b/backend/instance/sessions/2ab8a5ce33e16e220f3dfb96fc4e9709_activity.pkl differ diff --git a/backend/instance/sessions/2af9b22fb1771922c34f7a864fa2a199_activity.pkl b/backend/instance/sessions/2af9b22fb1771922c34f7a864fa2a199_activity.pkl new file mode 100644 index 000000000..6232288fc Binary files /dev/null and b/backend/instance/sessions/2af9b22fb1771922c34f7a864fa2a199_activity.pkl differ diff --git a/backend/instance/sessions/2b0836f7a235f65115ff1603a6df060e_activity.pkl b/backend/instance/sessions/2b0836f7a235f65115ff1603a6df060e_activity.pkl new file mode 100644 index 000000000..5ff1fd428 Binary files /dev/null and b/backend/instance/sessions/2b0836f7a235f65115ff1603a6df060e_activity.pkl differ diff --git a/backend/instance/sessions/2b0ae4716c8da125d331eb4732184af7_activity.pkl b/backend/instance/sessions/2b0ae4716c8da125d331eb4732184af7_activity.pkl new file mode 100644 index 000000000..0c4d893d3 Binary files /dev/null and b/backend/instance/sessions/2b0ae4716c8da125d331eb4732184af7_activity.pkl differ diff --git a/backend/instance/sessions/2b1d5d7b8b37f1d7870eae2027df2abe_activity.pkl b/backend/instance/sessions/2b1d5d7b8b37f1d7870eae2027df2abe_activity.pkl new file mode 100644 index 000000000..922497a91 Binary files /dev/null and b/backend/instance/sessions/2b1d5d7b8b37f1d7870eae2027df2abe_activity.pkl differ diff --git a/backend/instance/sessions/2b4459c18a5930fbbcad49ba38863494_activity.pkl b/backend/instance/sessions/2b4459c18a5930fbbcad49ba38863494_activity.pkl new file mode 100644 index 000000000..10535cfc9 Binary files /dev/null and b/backend/instance/sessions/2b4459c18a5930fbbcad49ba38863494_activity.pkl differ diff --git a/backend/instance/sessions/2b97ddd833c6edb4f97200a1e1da2448_activity.pkl b/backend/instance/sessions/2b97ddd833c6edb4f97200a1e1da2448_activity.pkl new file mode 100644 index 000000000..c9f4e69bb Binary files /dev/null and b/backend/instance/sessions/2b97ddd833c6edb4f97200a1e1da2448_activity.pkl differ diff --git a/backend/instance/sessions/2ba4f02ad5028ce3bf848ae70ae2d4d2_activity.pkl b/backend/instance/sessions/2ba4f02ad5028ce3bf848ae70ae2d4d2_activity.pkl new file mode 100644 index 000000000..cd68456f1 Binary files /dev/null and b/backend/instance/sessions/2ba4f02ad5028ce3bf848ae70ae2d4d2_activity.pkl differ diff --git a/backend/instance/sessions/2bc0d8830a1c9580672c9108ce270e06_activity.pkl b/backend/instance/sessions/2bc0d8830a1c9580672c9108ce270e06_activity.pkl new file mode 100644 index 000000000..267233fce Binary files /dev/null and b/backend/instance/sessions/2bc0d8830a1c9580672c9108ce270e06_activity.pkl differ diff --git a/backend/instance/sessions/2c6ffd2f79fcca4e95939786fd106b39_activity.pkl b/backend/instance/sessions/2c6ffd2f79fcca4e95939786fd106b39_activity.pkl new file mode 100644 index 000000000..80aee3827 Binary files /dev/null and b/backend/instance/sessions/2c6ffd2f79fcca4e95939786fd106b39_activity.pkl differ diff --git a/backend/instance/sessions/2c733cb695b911c2bcd274352e990b6e_activity.pkl b/backend/instance/sessions/2c733cb695b911c2bcd274352e990b6e_activity.pkl new file mode 100644 index 000000000..52f0e3f80 Binary files /dev/null and b/backend/instance/sessions/2c733cb695b911c2bcd274352e990b6e_activity.pkl differ diff --git a/backend/instance/sessions/2cbfbb9987ab559b571af7467da1e4ae_activity.pkl b/backend/instance/sessions/2cbfbb9987ab559b571af7467da1e4ae_activity.pkl new file mode 100644 index 000000000..ee93fc2e8 Binary files /dev/null and b/backend/instance/sessions/2cbfbb9987ab559b571af7467da1e4ae_activity.pkl differ diff --git a/backend/instance/sessions/2cf007fc6567101ff01893260d6fd8db_activity.pkl b/backend/instance/sessions/2cf007fc6567101ff01893260d6fd8db_activity.pkl new file mode 100644 index 000000000..b42248a35 Binary files /dev/null and b/backend/instance/sessions/2cf007fc6567101ff01893260d6fd8db_activity.pkl differ diff --git a/backend/instance/sessions/2cf7018cf999b436eb1a2378922e398d_activity.pkl b/backend/instance/sessions/2cf7018cf999b436eb1a2378922e398d_activity.pkl new file mode 100644 index 000000000..39365e9b2 Binary files /dev/null and b/backend/instance/sessions/2cf7018cf999b436eb1a2378922e398d_activity.pkl differ diff --git a/backend/instance/sessions/2d4309910a05ae9b843458f296de0a66_activity.pkl b/backend/instance/sessions/2d4309910a05ae9b843458f296de0a66_activity.pkl new file mode 100644 index 000000000..5d748facc Binary files /dev/null and b/backend/instance/sessions/2d4309910a05ae9b843458f296de0a66_activity.pkl differ diff --git a/backend/instance/sessions/2db77c1e85929d4272d3a8d4e71f40d3_activity.pkl b/backend/instance/sessions/2db77c1e85929d4272d3a8d4e71f40d3_activity.pkl new file mode 100644 index 000000000..a177864cd Binary files /dev/null and b/backend/instance/sessions/2db77c1e85929d4272d3a8d4e71f40d3_activity.pkl differ diff --git a/backend/instance/sessions/2dc3f133aa53557832003ff9131ffd53_activity.pkl b/backend/instance/sessions/2dc3f133aa53557832003ff9131ffd53_activity.pkl new file mode 100644 index 000000000..9cf6df920 Binary files /dev/null and b/backend/instance/sessions/2dc3f133aa53557832003ff9131ffd53_activity.pkl differ diff --git a/backend/instance/sessions/2e358ec57d269588fa24ff069989307e_activity.pkl b/backend/instance/sessions/2e358ec57d269588fa24ff069989307e_activity.pkl new file mode 100644 index 000000000..84d24161d Binary files /dev/null and b/backend/instance/sessions/2e358ec57d269588fa24ff069989307e_activity.pkl differ diff --git a/backend/instance/sessions/2f71dfb380824d0b7f67c682c923c8e6_activity.pkl b/backend/instance/sessions/2f71dfb380824d0b7f67c682c923c8e6_activity.pkl new file mode 100644 index 000000000..8688b37ab Binary files /dev/null and b/backend/instance/sessions/2f71dfb380824d0b7f67c682c923c8e6_activity.pkl differ diff --git a/backend/instance/sessions/2f9974f98270d852ec4f4137eab7d8c6_activity.pkl b/backend/instance/sessions/2f9974f98270d852ec4f4137eab7d8c6_activity.pkl new file mode 100644 index 000000000..ab96c24aa Binary files /dev/null and b/backend/instance/sessions/2f9974f98270d852ec4f4137eab7d8c6_activity.pkl differ diff --git a/backend/instance/sessions/2fc1e41cd54bb9b39ba30ec466dbfdf6_activity.pkl b/backend/instance/sessions/2fc1e41cd54bb9b39ba30ec466dbfdf6_activity.pkl new file mode 100644 index 000000000..a2f0202ee Binary files /dev/null and b/backend/instance/sessions/2fc1e41cd54bb9b39ba30ec466dbfdf6_activity.pkl differ diff --git a/backend/instance/sessions/2fe3e5434172eba8ef59c92f5fb4743a_activity.pkl b/backend/instance/sessions/2fe3e5434172eba8ef59c92f5fb4743a_activity.pkl new file mode 100644 index 000000000..96e7f822b Binary files /dev/null and b/backend/instance/sessions/2fe3e5434172eba8ef59c92f5fb4743a_activity.pkl differ diff --git a/backend/instance/sessions/30257567d5e9e20c551f6e0bedc0a7e4_activity.pkl b/backend/instance/sessions/30257567d5e9e20c551f6e0bedc0a7e4_activity.pkl new file mode 100644 index 000000000..167f3dd1f Binary files /dev/null and b/backend/instance/sessions/30257567d5e9e20c551f6e0bedc0a7e4_activity.pkl differ diff --git a/backend/instance/sessions/303f5ea5210e7644b9cf23a72aeebfa6_activity.pkl b/backend/instance/sessions/303f5ea5210e7644b9cf23a72aeebfa6_activity.pkl new file mode 100644 index 000000000..81e7f878b Binary files /dev/null and b/backend/instance/sessions/303f5ea5210e7644b9cf23a72aeebfa6_activity.pkl differ diff --git a/backend/instance/sessions/305405db9209782aa7994c6e476fdde2_activity.pkl b/backend/instance/sessions/305405db9209782aa7994c6e476fdde2_activity.pkl new file mode 100644 index 000000000..f8f235e71 Binary files /dev/null and b/backend/instance/sessions/305405db9209782aa7994c6e476fdde2_activity.pkl differ diff --git a/backend/instance/sessions/3055a94d5cc5363ad1559e5af852c869_activity.pkl b/backend/instance/sessions/3055a94d5cc5363ad1559e5af852c869_activity.pkl new file mode 100644 index 000000000..63ca330be Binary files /dev/null and b/backend/instance/sessions/3055a94d5cc5363ad1559e5af852c869_activity.pkl differ diff --git a/backend/instance/sessions/30ec5fc6c09ec89a521b8d82548bd0c7_activity.pkl b/backend/instance/sessions/30ec5fc6c09ec89a521b8d82548bd0c7_activity.pkl new file mode 100644 index 000000000..b5f1d7e20 Binary files /dev/null and b/backend/instance/sessions/30ec5fc6c09ec89a521b8d82548bd0c7_activity.pkl differ diff --git a/backend/instance/sessions/313408835a6d2e0faa8a4dc909db339f_activity.pkl b/backend/instance/sessions/313408835a6d2e0faa8a4dc909db339f_activity.pkl new file mode 100644 index 000000000..0de5cff0d Binary files /dev/null and b/backend/instance/sessions/313408835a6d2e0faa8a4dc909db339f_activity.pkl differ diff --git a/backend/instance/sessions/3136878811787949cebd33070aa6fad7_activity.pkl b/backend/instance/sessions/3136878811787949cebd33070aa6fad7_activity.pkl new file mode 100644 index 000000000..5d80ae2ae Binary files /dev/null and b/backend/instance/sessions/3136878811787949cebd33070aa6fad7_activity.pkl differ diff --git a/backend/instance/sessions/31bb3e4d0f4113776f9cd50a98491fcb_activity.pkl b/backend/instance/sessions/31bb3e4d0f4113776f9cd50a98491fcb_activity.pkl new file mode 100644 index 000000000..21522cc4f Binary files /dev/null and b/backend/instance/sessions/31bb3e4d0f4113776f9cd50a98491fcb_activity.pkl differ diff --git a/backend/instance/sessions/323254ff9efcef670a5e026bee84e36d_activity.pkl b/backend/instance/sessions/323254ff9efcef670a5e026bee84e36d_activity.pkl new file mode 100644 index 000000000..cd015f3a7 Binary files /dev/null and b/backend/instance/sessions/323254ff9efcef670a5e026bee84e36d_activity.pkl differ diff --git a/backend/instance/sessions/3239513dd636d080b6554556422e49e2_activity.pkl b/backend/instance/sessions/3239513dd636d080b6554556422e49e2_activity.pkl new file mode 100644 index 000000000..bad7affd1 Binary files /dev/null and b/backend/instance/sessions/3239513dd636d080b6554556422e49e2_activity.pkl differ diff --git a/backend/instance/sessions/326cbba08fbc9091d7251857a6d9a0f8_activity.pkl b/backend/instance/sessions/326cbba08fbc9091d7251857a6d9a0f8_activity.pkl new file mode 100644 index 000000000..cb5779035 Binary files /dev/null and b/backend/instance/sessions/326cbba08fbc9091d7251857a6d9a0f8_activity.pkl differ diff --git a/backend/instance/sessions/328387f0f21fc0028f17cf9c0757d5db_activity.pkl b/backend/instance/sessions/328387f0f21fc0028f17cf9c0757d5db_activity.pkl new file mode 100644 index 000000000..14b1087f4 Binary files /dev/null and b/backend/instance/sessions/328387f0f21fc0028f17cf9c0757d5db_activity.pkl differ diff --git a/backend/instance/sessions/32ae9110b1a6a2f0c96c6b10176d6afa_activity.pkl b/backend/instance/sessions/32ae9110b1a6a2f0c96c6b10176d6afa_activity.pkl new file mode 100644 index 000000000..98fd24e78 Binary files /dev/null and b/backend/instance/sessions/32ae9110b1a6a2f0c96c6b10176d6afa_activity.pkl differ diff --git a/backend/instance/sessions/32f1eb49602db69cb64a23339750273b_activity.pkl b/backend/instance/sessions/32f1eb49602db69cb64a23339750273b_activity.pkl new file mode 100644 index 000000000..3694c5e94 Binary files /dev/null and b/backend/instance/sessions/32f1eb49602db69cb64a23339750273b_activity.pkl differ diff --git a/backend/instance/sessions/33645b0de9c65ebabcbc8d0642d7c119_activity.pkl b/backend/instance/sessions/33645b0de9c65ebabcbc8d0642d7c119_activity.pkl new file mode 100644 index 000000000..42618378b Binary files /dev/null and b/backend/instance/sessions/33645b0de9c65ebabcbc8d0642d7c119_activity.pkl differ diff --git a/backend/instance/sessions/33af07c0efdf1fdec01a093e13916791_activity.pkl b/backend/instance/sessions/33af07c0efdf1fdec01a093e13916791_activity.pkl new file mode 100644 index 000000000..4c014f6f7 Binary files /dev/null and b/backend/instance/sessions/33af07c0efdf1fdec01a093e13916791_activity.pkl differ diff --git a/backend/instance/sessions/33afbc30b263aa9dfb1257ad6746b4eb_activity.pkl b/backend/instance/sessions/33afbc30b263aa9dfb1257ad6746b4eb_activity.pkl new file mode 100644 index 000000000..219d02387 Binary files /dev/null and b/backend/instance/sessions/33afbc30b263aa9dfb1257ad6746b4eb_activity.pkl differ diff --git a/backend/instance/sessions/33da73e4626922a32edb177ff158da44_activity.pkl b/backend/instance/sessions/33da73e4626922a32edb177ff158da44_activity.pkl new file mode 100644 index 000000000..1c6ca2b91 Binary files /dev/null and b/backend/instance/sessions/33da73e4626922a32edb177ff158da44_activity.pkl differ diff --git a/backend/instance/sessions/33ff706dc174cdb6e798ed66d2565bef_activity.pkl b/backend/instance/sessions/33ff706dc174cdb6e798ed66d2565bef_activity.pkl new file mode 100644 index 000000000..33e52a355 Binary files /dev/null and b/backend/instance/sessions/33ff706dc174cdb6e798ed66d2565bef_activity.pkl differ diff --git a/backend/instance/sessions/34405b9ced0cbcb98e16627b60dcb138_activity.pkl b/backend/instance/sessions/34405b9ced0cbcb98e16627b60dcb138_activity.pkl new file mode 100644 index 000000000..ceb72ed33 Binary files /dev/null and b/backend/instance/sessions/34405b9ced0cbcb98e16627b60dcb138_activity.pkl differ diff --git a/backend/instance/sessions/345377e3f1f364232d734542f0b6e575_activity.pkl b/backend/instance/sessions/345377e3f1f364232d734542f0b6e575_activity.pkl new file mode 100644 index 000000000..d3b7233a9 Binary files /dev/null and b/backend/instance/sessions/345377e3f1f364232d734542f0b6e575_activity.pkl differ diff --git a/backend/instance/sessions/347af8fd77754d812dbef5565760ecce_activity.pkl b/backend/instance/sessions/347af8fd77754d812dbef5565760ecce_activity.pkl new file mode 100644 index 000000000..d6c14383a Binary files /dev/null and b/backend/instance/sessions/347af8fd77754d812dbef5565760ecce_activity.pkl differ diff --git a/backend/instance/sessions/354bc09d3c0d9633868ab3bc74b02749_activity.pkl b/backend/instance/sessions/354bc09d3c0d9633868ab3bc74b02749_activity.pkl new file mode 100644 index 000000000..e1d7b272b Binary files /dev/null and b/backend/instance/sessions/354bc09d3c0d9633868ab3bc74b02749_activity.pkl differ diff --git a/backend/instance/sessions/3576873f9f9d1e1053e7d0d548dc6a7f_activity.pkl b/backend/instance/sessions/3576873f9f9d1e1053e7d0d548dc6a7f_activity.pkl new file mode 100644 index 000000000..097e37c1e Binary files /dev/null and b/backend/instance/sessions/3576873f9f9d1e1053e7d0d548dc6a7f_activity.pkl differ diff --git a/backend/instance/sessions/35899c93b446e2770f0124287fb718cc_activity.pkl b/backend/instance/sessions/35899c93b446e2770f0124287fb718cc_activity.pkl new file mode 100644 index 000000000..22bbbf92e Binary files /dev/null and b/backend/instance/sessions/35899c93b446e2770f0124287fb718cc_activity.pkl differ diff --git a/backend/instance/sessions/35c5a47ca6232b0eca9b47824aab7183_activity.pkl b/backend/instance/sessions/35c5a47ca6232b0eca9b47824aab7183_activity.pkl new file mode 100644 index 000000000..0b5fb6442 Binary files /dev/null and b/backend/instance/sessions/35c5a47ca6232b0eca9b47824aab7183_activity.pkl differ diff --git a/backend/instance/sessions/3663addd60112287137fa0a4ad0e964b_activity.pkl b/backend/instance/sessions/3663addd60112287137fa0a4ad0e964b_activity.pkl new file mode 100644 index 000000000..65d890128 Binary files /dev/null and b/backend/instance/sessions/3663addd60112287137fa0a4ad0e964b_activity.pkl differ diff --git a/backend/instance/sessions/36ac08944bc53ae5a7bc0228c7abda91_activity.pkl b/backend/instance/sessions/36ac08944bc53ae5a7bc0228c7abda91_activity.pkl new file mode 100644 index 000000000..d91b02c01 Binary files /dev/null and b/backend/instance/sessions/36ac08944bc53ae5a7bc0228c7abda91_activity.pkl differ diff --git a/backend/instance/sessions/36bc8e6767011cc59680b4fed485d298_activity.pkl b/backend/instance/sessions/36bc8e6767011cc59680b4fed485d298_activity.pkl new file mode 100644 index 000000000..613d8ef1f Binary files /dev/null and b/backend/instance/sessions/36bc8e6767011cc59680b4fed485d298_activity.pkl differ diff --git a/backend/instance/sessions/36e619567fa03d978150ab4bccd20b4e_activity.pkl b/backend/instance/sessions/36e619567fa03d978150ab4bccd20b4e_activity.pkl new file mode 100644 index 000000000..787e3d4e4 Binary files /dev/null and b/backend/instance/sessions/36e619567fa03d978150ab4bccd20b4e_activity.pkl differ diff --git a/backend/instance/sessions/376c3d2369fdda747d9f931e1123f519_activity.pkl b/backend/instance/sessions/376c3d2369fdda747d9f931e1123f519_activity.pkl new file mode 100644 index 000000000..418d358a7 Binary files /dev/null and b/backend/instance/sessions/376c3d2369fdda747d9f931e1123f519_activity.pkl differ diff --git a/backend/instance/sessions/381596d58b7e3efbb0869b5a28cf3daa_activity.pkl b/backend/instance/sessions/381596d58b7e3efbb0869b5a28cf3daa_activity.pkl new file mode 100644 index 000000000..c39fd4b13 Binary files /dev/null and b/backend/instance/sessions/381596d58b7e3efbb0869b5a28cf3daa_activity.pkl differ diff --git a/backend/instance/sessions/3834e02273648a5cb52cef493bac9d5c_activity.pkl b/backend/instance/sessions/3834e02273648a5cb52cef493bac9d5c_activity.pkl new file mode 100644 index 000000000..8f930f1fc Binary files /dev/null and b/backend/instance/sessions/3834e02273648a5cb52cef493bac9d5c_activity.pkl differ diff --git a/backend/instance/sessions/38afbc41b987d92704ca0e36d51a5d4a_activity.pkl b/backend/instance/sessions/38afbc41b987d92704ca0e36d51a5d4a_activity.pkl new file mode 100644 index 000000000..09283d13e Binary files /dev/null and b/backend/instance/sessions/38afbc41b987d92704ca0e36d51a5d4a_activity.pkl differ diff --git a/backend/instance/sessions/38d14b9cf83a4926872b0fb635ce7354_activity.pkl b/backend/instance/sessions/38d14b9cf83a4926872b0fb635ce7354_activity.pkl new file mode 100644 index 000000000..4bb96620d Binary files /dev/null and b/backend/instance/sessions/38d14b9cf83a4926872b0fb635ce7354_activity.pkl differ diff --git a/backend/instance/sessions/38dd67f3f1cd1edc859d982a5b403ef5_activity.pkl b/backend/instance/sessions/38dd67f3f1cd1edc859d982a5b403ef5_activity.pkl new file mode 100644 index 000000000..1ca622a77 Binary files /dev/null and b/backend/instance/sessions/38dd67f3f1cd1edc859d982a5b403ef5_activity.pkl differ diff --git a/backend/instance/sessions/38eeb6a3ccbf03cf012a375e178b1a8e_activity.pkl b/backend/instance/sessions/38eeb6a3ccbf03cf012a375e178b1a8e_activity.pkl new file mode 100644 index 000000000..049e3f254 Binary files /dev/null and b/backend/instance/sessions/38eeb6a3ccbf03cf012a375e178b1a8e_activity.pkl differ diff --git a/backend/instance/sessions/38fbdf7ecd992db56823ee4687724a67_activity.pkl b/backend/instance/sessions/38fbdf7ecd992db56823ee4687724a67_activity.pkl new file mode 100644 index 000000000..8e80d74e3 Binary files /dev/null and b/backend/instance/sessions/38fbdf7ecd992db56823ee4687724a67_activity.pkl differ diff --git a/backend/instance/sessions/39bbb79498c7df30c3fd38c210a67f45_activity.pkl b/backend/instance/sessions/39bbb79498c7df30c3fd38c210a67f45_activity.pkl new file mode 100644 index 000000000..ebba6ef8a Binary files /dev/null and b/backend/instance/sessions/39bbb79498c7df30c3fd38c210a67f45_activity.pkl differ diff --git a/backend/instance/sessions/39d620c45f36fd0a3ee1d0e896959de3_activity.pkl b/backend/instance/sessions/39d620c45f36fd0a3ee1d0e896959de3_activity.pkl new file mode 100644 index 000000000..6dd0cc86e Binary files /dev/null and b/backend/instance/sessions/39d620c45f36fd0a3ee1d0e896959de3_activity.pkl differ diff --git a/backend/instance/sessions/3a98ca177b5e4bf89d54580c039d4a4a_activity.pkl b/backend/instance/sessions/3a98ca177b5e4bf89d54580c039d4a4a_activity.pkl new file mode 100644 index 000000000..cafedde20 Binary files /dev/null and b/backend/instance/sessions/3a98ca177b5e4bf89d54580c039d4a4a_activity.pkl differ diff --git a/backend/instance/sessions/3b8217c0d9776c9a4fc2e5925cea5e17_activity.pkl b/backend/instance/sessions/3b8217c0d9776c9a4fc2e5925cea5e17_activity.pkl new file mode 100644 index 000000000..84834ba82 Binary files /dev/null and b/backend/instance/sessions/3b8217c0d9776c9a4fc2e5925cea5e17_activity.pkl differ diff --git a/backend/instance/sessions/3d2feb1bf1d281f66564b4b131b3b0cd_activity.pkl b/backend/instance/sessions/3d2feb1bf1d281f66564b4b131b3b0cd_activity.pkl new file mode 100644 index 000000000..6205ea790 Binary files /dev/null and b/backend/instance/sessions/3d2feb1bf1d281f66564b4b131b3b0cd_activity.pkl differ diff --git a/backend/instance/sessions/3d7d6e260f8056511663b8dc7e156dfa_activity.pkl b/backend/instance/sessions/3d7d6e260f8056511663b8dc7e156dfa_activity.pkl new file mode 100644 index 000000000..8a3c11c78 Binary files /dev/null and b/backend/instance/sessions/3d7d6e260f8056511663b8dc7e156dfa_activity.pkl differ diff --git a/backend/instance/sessions/3d89b7cb6dc845c8d48c66ffa9c71586_activity.pkl b/backend/instance/sessions/3d89b7cb6dc845c8d48c66ffa9c71586_activity.pkl new file mode 100644 index 000000000..83f0544e6 Binary files /dev/null and b/backend/instance/sessions/3d89b7cb6dc845c8d48c66ffa9c71586_activity.pkl differ diff --git a/backend/instance/sessions/3ec40e03d3a6fb4fa852ba38909cf495_activity.pkl b/backend/instance/sessions/3ec40e03d3a6fb4fa852ba38909cf495_activity.pkl new file mode 100644 index 000000000..200bf23f9 Binary files /dev/null and b/backend/instance/sessions/3ec40e03d3a6fb4fa852ba38909cf495_activity.pkl differ diff --git a/backend/instance/sessions/3f2181408636de36794cdc7d39454001_activity.pkl b/backend/instance/sessions/3f2181408636de36794cdc7d39454001_activity.pkl new file mode 100644 index 000000000..fe8e22fc1 Binary files /dev/null and b/backend/instance/sessions/3f2181408636de36794cdc7d39454001_activity.pkl differ diff --git a/backend/instance/sessions/3f2b3dd861f081e0269a537eed43fdae_activity.pkl b/backend/instance/sessions/3f2b3dd861f081e0269a537eed43fdae_activity.pkl new file mode 100644 index 000000000..d0e310adf Binary files /dev/null and b/backend/instance/sessions/3f2b3dd861f081e0269a537eed43fdae_activity.pkl differ diff --git a/backend/instance/sessions/3f589ec064acf84e6ab253d4dbaab7eb_activity.pkl b/backend/instance/sessions/3f589ec064acf84e6ab253d4dbaab7eb_activity.pkl new file mode 100644 index 000000000..16c5cf767 Binary files /dev/null and b/backend/instance/sessions/3f589ec064acf84e6ab253d4dbaab7eb_activity.pkl differ diff --git a/backend/instance/sessions/3f6f59811966ed95c2e245cb84d0ede7_activity.pkl b/backend/instance/sessions/3f6f59811966ed95c2e245cb84d0ede7_activity.pkl new file mode 100644 index 000000000..a2e653078 Binary files /dev/null and b/backend/instance/sessions/3f6f59811966ed95c2e245cb84d0ede7_activity.pkl differ diff --git a/backend/instance/sessions/3feb3444cb7e91bdc16c20e9e911cb10_activity.pkl b/backend/instance/sessions/3feb3444cb7e91bdc16c20e9e911cb10_activity.pkl new file mode 100644 index 000000000..a9565d7d6 Binary files /dev/null and b/backend/instance/sessions/3feb3444cb7e91bdc16c20e9e911cb10_activity.pkl differ diff --git a/backend/instance/sessions/4005700b1656d789810c8aa663ef5081_activity.pkl b/backend/instance/sessions/4005700b1656d789810c8aa663ef5081_activity.pkl new file mode 100644 index 000000000..1ed4da0ff Binary files /dev/null and b/backend/instance/sessions/4005700b1656d789810c8aa663ef5081_activity.pkl differ diff --git a/backend/instance/sessions/400dc9f671015bac2e3092090eda798e_activity.pkl b/backend/instance/sessions/400dc9f671015bac2e3092090eda798e_activity.pkl new file mode 100644 index 000000000..864c5450c Binary files /dev/null and b/backend/instance/sessions/400dc9f671015bac2e3092090eda798e_activity.pkl differ diff --git a/backend/instance/sessions/404d2174ac6ef0899aa885dcf5b728cd_activity.pkl b/backend/instance/sessions/404d2174ac6ef0899aa885dcf5b728cd_activity.pkl new file mode 100644 index 000000000..030330029 Binary files /dev/null and b/backend/instance/sessions/404d2174ac6ef0899aa885dcf5b728cd_activity.pkl differ diff --git a/backend/instance/sessions/4070db0ba01de9a854e6461e78ebf827_activity.pkl b/backend/instance/sessions/4070db0ba01de9a854e6461e78ebf827_activity.pkl new file mode 100644 index 000000000..e9c3e6d2d Binary files /dev/null and b/backend/instance/sessions/4070db0ba01de9a854e6461e78ebf827_activity.pkl differ diff --git a/backend/instance/sessions/40b9aaede1cf919c1ac014e6b74fc379_activity.pkl b/backend/instance/sessions/40b9aaede1cf919c1ac014e6b74fc379_activity.pkl new file mode 100644 index 000000000..9f2301334 Binary files /dev/null and b/backend/instance/sessions/40b9aaede1cf919c1ac014e6b74fc379_activity.pkl differ diff --git a/backend/instance/sessions/4123215cb5fbd9415d119e27710a875a_activity.pkl b/backend/instance/sessions/4123215cb5fbd9415d119e27710a875a_activity.pkl new file mode 100644 index 000000000..ad1d61807 Binary files /dev/null and b/backend/instance/sessions/4123215cb5fbd9415d119e27710a875a_activity.pkl differ diff --git a/backend/instance/sessions/41d59771e9c2d0308cb4a7e4e9904c35_activity.pkl b/backend/instance/sessions/41d59771e9c2d0308cb4a7e4e9904c35_activity.pkl new file mode 100644 index 000000000..e09d0772e Binary files /dev/null and b/backend/instance/sessions/41d59771e9c2d0308cb4a7e4e9904c35_activity.pkl differ diff --git a/backend/instance/sessions/41e07d02fd82fd972cce190862d6289c_activity.pkl b/backend/instance/sessions/41e07d02fd82fd972cce190862d6289c_activity.pkl new file mode 100644 index 000000000..a105d69ca Binary files /dev/null and b/backend/instance/sessions/41e07d02fd82fd972cce190862d6289c_activity.pkl differ diff --git a/backend/instance/sessions/41f66eea62217ef26a8086dd33652f5d_activity.pkl b/backend/instance/sessions/41f66eea62217ef26a8086dd33652f5d_activity.pkl new file mode 100644 index 000000000..a3a722175 Binary files /dev/null and b/backend/instance/sessions/41f66eea62217ef26a8086dd33652f5d_activity.pkl differ diff --git a/backend/instance/sessions/41fcb7d6e4dacca72004d8e0e1b70c33_activity.pkl b/backend/instance/sessions/41fcb7d6e4dacca72004d8e0e1b70c33_activity.pkl new file mode 100644 index 000000000..97d5ff803 Binary files /dev/null and b/backend/instance/sessions/41fcb7d6e4dacca72004d8e0e1b70c33_activity.pkl differ diff --git a/backend/instance/sessions/4213d969989221a308aff9ea788654d8_activity.pkl b/backend/instance/sessions/4213d969989221a308aff9ea788654d8_activity.pkl new file mode 100644 index 000000000..e5466d1e7 Binary files /dev/null and b/backend/instance/sessions/4213d969989221a308aff9ea788654d8_activity.pkl differ diff --git a/backend/instance/sessions/428040e7f6770c5b28f76ccb247ca8a7_activity.pkl b/backend/instance/sessions/428040e7f6770c5b28f76ccb247ca8a7_activity.pkl new file mode 100644 index 000000000..b3e02033b Binary files /dev/null and b/backend/instance/sessions/428040e7f6770c5b28f76ccb247ca8a7_activity.pkl differ diff --git a/backend/instance/sessions/429e11742c9688ea6380c6ddf38717bc_activity.pkl b/backend/instance/sessions/429e11742c9688ea6380c6ddf38717bc_activity.pkl new file mode 100644 index 000000000..a57c04984 Binary files /dev/null and b/backend/instance/sessions/429e11742c9688ea6380c6ddf38717bc_activity.pkl differ diff --git a/backend/instance/sessions/43038f710a667c5ba18908390b6cc2d1_activity.pkl b/backend/instance/sessions/43038f710a667c5ba18908390b6cc2d1_activity.pkl new file mode 100644 index 000000000..18c1684a4 Binary files /dev/null and b/backend/instance/sessions/43038f710a667c5ba18908390b6cc2d1_activity.pkl differ diff --git a/backend/instance/sessions/43527d19d012f71a7bc5210b6e5418e0_activity.pkl b/backend/instance/sessions/43527d19d012f71a7bc5210b6e5418e0_activity.pkl new file mode 100644 index 000000000..5a0d52950 Binary files /dev/null and b/backend/instance/sessions/43527d19d012f71a7bc5210b6e5418e0_activity.pkl differ diff --git a/backend/instance/sessions/44039a8ce147d753ede739623ef5363c_activity.pkl b/backend/instance/sessions/44039a8ce147d753ede739623ef5363c_activity.pkl new file mode 100644 index 000000000..619af9278 Binary files /dev/null and b/backend/instance/sessions/44039a8ce147d753ede739623ef5363c_activity.pkl differ diff --git a/backend/instance/sessions/4410d7d781ed65dcb2fc945bd623dac8_activity.pkl b/backend/instance/sessions/4410d7d781ed65dcb2fc945bd623dac8_activity.pkl new file mode 100644 index 000000000..0fa41963b Binary files /dev/null and b/backend/instance/sessions/4410d7d781ed65dcb2fc945bd623dac8_activity.pkl differ diff --git a/backend/instance/sessions/44e0dc851b5cc546293dbfae3f589608_activity.pkl b/backend/instance/sessions/44e0dc851b5cc546293dbfae3f589608_activity.pkl new file mode 100644 index 000000000..53e5e3dc4 Binary files /dev/null and b/backend/instance/sessions/44e0dc851b5cc546293dbfae3f589608_activity.pkl differ diff --git a/backend/instance/sessions/450a9da6ecac27db24dc7d32a8f65983_activity.pkl b/backend/instance/sessions/450a9da6ecac27db24dc7d32a8f65983_activity.pkl new file mode 100644 index 000000000..841ffdee6 Binary files /dev/null and b/backend/instance/sessions/450a9da6ecac27db24dc7d32a8f65983_activity.pkl differ diff --git a/backend/instance/sessions/45447c28b0e6d821715b8ec2fd560388_activity.pkl b/backend/instance/sessions/45447c28b0e6d821715b8ec2fd560388_activity.pkl new file mode 100644 index 000000000..428a4f929 Binary files /dev/null and b/backend/instance/sessions/45447c28b0e6d821715b8ec2fd560388_activity.pkl differ diff --git a/backend/instance/sessions/45c5463561f2208e17283b24c23e3074_activity.pkl b/backend/instance/sessions/45c5463561f2208e17283b24c23e3074_activity.pkl new file mode 100644 index 000000000..86a68dc9a Binary files /dev/null and b/backend/instance/sessions/45c5463561f2208e17283b24c23e3074_activity.pkl differ diff --git a/backend/instance/sessions/46e8d92ff8b700037c4f0f2d59081512_activity.pkl b/backend/instance/sessions/46e8d92ff8b700037c4f0f2d59081512_activity.pkl new file mode 100644 index 000000000..e803d8094 Binary files /dev/null and b/backend/instance/sessions/46e8d92ff8b700037c4f0f2d59081512_activity.pkl differ diff --git a/backend/instance/sessions/4760fc74a14f8f1fa3af2efecfc6c9f0_activity.pkl b/backend/instance/sessions/4760fc74a14f8f1fa3af2efecfc6c9f0_activity.pkl new file mode 100644 index 000000000..c5d000ac2 Binary files /dev/null and b/backend/instance/sessions/4760fc74a14f8f1fa3af2efecfc6c9f0_activity.pkl differ diff --git a/backend/instance/sessions/47f9effabfd498e02b8c0a850027279b_activity.pkl b/backend/instance/sessions/47f9effabfd498e02b8c0a850027279b_activity.pkl new file mode 100644 index 000000000..0ac430b7d Binary files /dev/null and b/backend/instance/sessions/47f9effabfd498e02b8c0a850027279b_activity.pkl differ diff --git a/backend/instance/sessions/483cd594d1f3e528ce2fa3470e655649_activity.pkl b/backend/instance/sessions/483cd594d1f3e528ce2fa3470e655649_activity.pkl new file mode 100644 index 000000000..91da109e9 Binary files /dev/null and b/backend/instance/sessions/483cd594d1f3e528ce2fa3470e655649_activity.pkl differ diff --git a/backend/instance/sessions/4857b80a738c9c8f1010315b6d9f0570_activity.pkl b/backend/instance/sessions/4857b80a738c9c8f1010315b6d9f0570_activity.pkl new file mode 100644 index 000000000..9cd3dd9af Binary files /dev/null and b/backend/instance/sessions/4857b80a738c9c8f1010315b6d9f0570_activity.pkl differ diff --git a/backend/instance/sessions/4865b9b593a95c3049f45ecb9dafd54e_activity.pkl b/backend/instance/sessions/4865b9b593a95c3049f45ecb9dafd54e_activity.pkl new file mode 100644 index 000000000..48d967615 Binary files /dev/null and b/backend/instance/sessions/4865b9b593a95c3049f45ecb9dafd54e_activity.pkl differ diff --git a/backend/instance/sessions/4868c1165d177bdb3f54124c40b430b2_activity.pkl b/backend/instance/sessions/4868c1165d177bdb3f54124c40b430b2_activity.pkl new file mode 100644 index 000000000..a0a2b1ca9 Binary files /dev/null and b/backend/instance/sessions/4868c1165d177bdb3f54124c40b430b2_activity.pkl differ diff --git a/backend/instance/sessions/493af0337dddbfb71dd4a661db4f2840_activity.pkl b/backend/instance/sessions/493af0337dddbfb71dd4a661db4f2840_activity.pkl new file mode 100644 index 000000000..1a847fd06 Binary files /dev/null and b/backend/instance/sessions/493af0337dddbfb71dd4a661db4f2840_activity.pkl differ diff --git a/backend/instance/sessions/49de42a3886e53708bcd5cbcfb4ca9b8_activity.pkl b/backend/instance/sessions/49de42a3886e53708bcd5cbcfb4ca9b8_activity.pkl new file mode 100644 index 000000000..c5121a46a Binary files /dev/null and b/backend/instance/sessions/49de42a3886e53708bcd5cbcfb4ca9b8_activity.pkl differ diff --git a/backend/instance/sessions/49ee2ac7a040e68f667cb374f0e0b8eb_activity.pkl b/backend/instance/sessions/49ee2ac7a040e68f667cb374f0e0b8eb_activity.pkl new file mode 100644 index 000000000..4c95c0cfe Binary files /dev/null and b/backend/instance/sessions/49ee2ac7a040e68f667cb374f0e0b8eb_activity.pkl differ diff --git a/backend/instance/sessions/4a31ab8cdb4bed01a67b931d7ff744e9_activity.pkl b/backend/instance/sessions/4a31ab8cdb4bed01a67b931d7ff744e9_activity.pkl new file mode 100644 index 000000000..0d82a1167 Binary files /dev/null and b/backend/instance/sessions/4a31ab8cdb4bed01a67b931d7ff744e9_activity.pkl differ diff --git a/backend/instance/sessions/4a56ae444b6e5609af7c4e682a70b98b_activity.pkl b/backend/instance/sessions/4a56ae444b6e5609af7c4e682a70b98b_activity.pkl new file mode 100644 index 000000000..804095384 Binary files /dev/null and b/backend/instance/sessions/4a56ae444b6e5609af7c4e682a70b98b_activity.pkl differ diff --git a/backend/instance/sessions/4b162eadae2811e91cf6e4f75aecaf7e_activity.pkl b/backend/instance/sessions/4b162eadae2811e91cf6e4f75aecaf7e_activity.pkl new file mode 100644 index 000000000..596570eca Binary files /dev/null and b/backend/instance/sessions/4b162eadae2811e91cf6e4f75aecaf7e_activity.pkl differ diff --git a/backend/instance/sessions/4b83dcc19ab73cd23de22e6797d0f928_activity.pkl b/backend/instance/sessions/4b83dcc19ab73cd23de22e6797d0f928_activity.pkl new file mode 100644 index 000000000..fc38e816e Binary files /dev/null and b/backend/instance/sessions/4b83dcc19ab73cd23de22e6797d0f928_activity.pkl differ diff --git a/backend/instance/sessions/4b94a8463d2ece3489327bb0dc38b1be_activity.pkl b/backend/instance/sessions/4b94a8463d2ece3489327bb0dc38b1be_activity.pkl new file mode 100644 index 000000000..90c124413 Binary files /dev/null and b/backend/instance/sessions/4b94a8463d2ece3489327bb0dc38b1be_activity.pkl differ diff --git a/backend/instance/sessions/4bdc4fdbcf8c18df7af86bb8e5c8e069_activity.pkl b/backend/instance/sessions/4bdc4fdbcf8c18df7af86bb8e5c8e069_activity.pkl new file mode 100644 index 000000000..80593cb34 Binary files /dev/null and b/backend/instance/sessions/4bdc4fdbcf8c18df7af86bb8e5c8e069_activity.pkl differ diff --git a/backend/instance/sessions/4ca5425f3417733dd57981146b0bd9bc_activity.pkl b/backend/instance/sessions/4ca5425f3417733dd57981146b0bd9bc_activity.pkl new file mode 100644 index 000000000..00974a0eb Binary files /dev/null and b/backend/instance/sessions/4ca5425f3417733dd57981146b0bd9bc_activity.pkl differ diff --git a/backend/instance/sessions/4cf294cb33aa6c2de01a5b250b890f78_activity.pkl b/backend/instance/sessions/4cf294cb33aa6c2de01a5b250b890f78_activity.pkl new file mode 100644 index 000000000..8c6084502 Binary files /dev/null and b/backend/instance/sessions/4cf294cb33aa6c2de01a5b250b890f78_activity.pkl differ diff --git a/backend/instance/sessions/4d078052c13c8288665e67aa152f5d4b_activity.pkl b/backend/instance/sessions/4d078052c13c8288665e67aa152f5d4b_activity.pkl new file mode 100644 index 000000000..50b073143 Binary files /dev/null and b/backend/instance/sessions/4d078052c13c8288665e67aa152f5d4b_activity.pkl differ diff --git a/backend/instance/sessions/4d4f16c7b6f76ec15e42a1597e8180d4_activity.pkl b/backend/instance/sessions/4d4f16c7b6f76ec15e42a1597e8180d4_activity.pkl new file mode 100644 index 000000000..77653ca1d Binary files /dev/null and b/backend/instance/sessions/4d4f16c7b6f76ec15e42a1597e8180d4_activity.pkl differ diff --git a/backend/instance/sessions/4df26f47b0e64091341e5d0c656df87d_activity.pkl b/backend/instance/sessions/4df26f47b0e64091341e5d0c656df87d_activity.pkl new file mode 100644 index 000000000..6f1f85bce Binary files /dev/null and b/backend/instance/sessions/4df26f47b0e64091341e5d0c656df87d_activity.pkl differ diff --git a/backend/instance/sessions/4e5f1d1aed666e9bf64002f4a431f96e_activity.pkl b/backend/instance/sessions/4e5f1d1aed666e9bf64002f4a431f96e_activity.pkl new file mode 100644 index 000000000..7067e72bf Binary files /dev/null and b/backend/instance/sessions/4e5f1d1aed666e9bf64002f4a431f96e_activity.pkl differ diff --git a/backend/instance/sessions/4e900f2fc7d0f0589aae505625bcfe5e_activity.pkl b/backend/instance/sessions/4e900f2fc7d0f0589aae505625bcfe5e_activity.pkl new file mode 100644 index 000000000..62bb8febc Binary files /dev/null and b/backend/instance/sessions/4e900f2fc7d0f0589aae505625bcfe5e_activity.pkl differ diff --git a/backend/instance/sessions/4eaea8e5f833be6f18b65b019be32810_activity.pkl b/backend/instance/sessions/4eaea8e5f833be6f18b65b019be32810_activity.pkl new file mode 100644 index 000000000..3bd50efc0 Binary files /dev/null and b/backend/instance/sessions/4eaea8e5f833be6f18b65b019be32810_activity.pkl differ diff --git a/backend/instance/sessions/4ecfb38b50c7a29fe58b25dcba032166_activity.pkl b/backend/instance/sessions/4ecfb38b50c7a29fe58b25dcba032166_activity.pkl new file mode 100644 index 000000000..147a8936f Binary files /dev/null and b/backend/instance/sessions/4ecfb38b50c7a29fe58b25dcba032166_activity.pkl differ diff --git a/backend/instance/sessions/4efc5180915ee6660205c008c2d98367_activity.pkl b/backend/instance/sessions/4efc5180915ee6660205c008c2d98367_activity.pkl new file mode 100644 index 000000000..3c53b1ad0 Binary files /dev/null and b/backend/instance/sessions/4efc5180915ee6660205c008c2d98367_activity.pkl differ diff --git a/backend/instance/sessions/505aab1605d678c229af6d4d5247da83_activity.pkl b/backend/instance/sessions/505aab1605d678c229af6d4d5247da83_activity.pkl new file mode 100644 index 000000000..2b20c4f44 Binary files /dev/null and b/backend/instance/sessions/505aab1605d678c229af6d4d5247da83_activity.pkl differ diff --git a/backend/instance/sessions/50729c3912f8f463c8c420fd1feff11d_activity.pkl b/backend/instance/sessions/50729c3912f8f463c8c420fd1feff11d_activity.pkl new file mode 100644 index 000000000..d3621f063 Binary files /dev/null and b/backend/instance/sessions/50729c3912f8f463c8c420fd1feff11d_activity.pkl differ diff --git a/backend/instance/sessions/50f258203fa5e053277554dd1befb6d5_activity.pkl b/backend/instance/sessions/50f258203fa5e053277554dd1befb6d5_activity.pkl new file mode 100644 index 000000000..853898555 Binary files /dev/null and b/backend/instance/sessions/50f258203fa5e053277554dd1befb6d5_activity.pkl differ diff --git a/backend/instance/sessions/516d22032cade96286723ff2e32ade19_activity.pkl b/backend/instance/sessions/516d22032cade96286723ff2e32ade19_activity.pkl new file mode 100644 index 000000000..be0e91642 Binary files /dev/null and b/backend/instance/sessions/516d22032cade96286723ff2e32ade19_activity.pkl differ diff --git a/backend/instance/sessions/517ce66a97940f3e57707f9bd0603908_activity.pkl b/backend/instance/sessions/517ce66a97940f3e57707f9bd0603908_activity.pkl new file mode 100644 index 000000000..0bbaa7acd Binary files /dev/null and b/backend/instance/sessions/517ce66a97940f3e57707f9bd0603908_activity.pkl differ diff --git a/backend/instance/sessions/51c4c41ad040b12b0854a5410cfa1f73_activity.pkl b/backend/instance/sessions/51c4c41ad040b12b0854a5410cfa1f73_activity.pkl new file mode 100644 index 000000000..e20d34ba9 Binary files /dev/null and b/backend/instance/sessions/51c4c41ad040b12b0854a5410cfa1f73_activity.pkl differ diff --git a/backend/instance/sessions/51d77aad25e42ead670a5e58d6e2cfbb_activity.pkl b/backend/instance/sessions/51d77aad25e42ead670a5e58d6e2cfbb_activity.pkl new file mode 100644 index 000000000..28363f6b2 Binary files /dev/null and b/backend/instance/sessions/51d77aad25e42ead670a5e58d6e2cfbb_activity.pkl differ diff --git a/backend/instance/sessions/51e70782f57aee6998083f726e2b01c6_activity.pkl b/backend/instance/sessions/51e70782f57aee6998083f726e2b01c6_activity.pkl new file mode 100644 index 000000000..3903792b5 Binary files /dev/null and b/backend/instance/sessions/51e70782f57aee6998083f726e2b01c6_activity.pkl differ diff --git a/backend/instance/sessions/5213826e174a0ac9e50f99ee29904d03_activity.pkl b/backend/instance/sessions/5213826e174a0ac9e50f99ee29904d03_activity.pkl new file mode 100644 index 000000000..3a8fe396b Binary files /dev/null and b/backend/instance/sessions/5213826e174a0ac9e50f99ee29904d03_activity.pkl differ diff --git a/backend/instance/sessions/5246be664ecb9e52cb03be49c69475fe_activity.pkl b/backend/instance/sessions/5246be664ecb9e52cb03be49c69475fe_activity.pkl new file mode 100644 index 000000000..63c74d5e1 Binary files /dev/null and b/backend/instance/sessions/5246be664ecb9e52cb03be49c69475fe_activity.pkl differ diff --git a/backend/instance/sessions/52826aa6b33a325e6a1786ef4c098b75_activity.pkl b/backend/instance/sessions/52826aa6b33a325e6a1786ef4c098b75_activity.pkl new file mode 100644 index 000000000..31802ebf7 Binary files /dev/null and b/backend/instance/sessions/52826aa6b33a325e6a1786ef4c098b75_activity.pkl differ diff --git a/backend/instance/sessions/52d1a124fcedc1748b4b61726450bbfa_activity.pkl b/backend/instance/sessions/52d1a124fcedc1748b4b61726450bbfa_activity.pkl new file mode 100644 index 000000000..ed7f0b66a Binary files /dev/null and b/backend/instance/sessions/52d1a124fcedc1748b4b61726450bbfa_activity.pkl differ diff --git a/backend/instance/sessions/530ea5ee86a94e0bd8e8c5a04f2a52ea_activity.pkl b/backend/instance/sessions/530ea5ee86a94e0bd8e8c5a04f2a52ea_activity.pkl new file mode 100644 index 000000000..90a058d26 Binary files /dev/null and b/backend/instance/sessions/530ea5ee86a94e0bd8e8c5a04f2a52ea_activity.pkl differ diff --git a/backend/instance/sessions/532c309933543617750d9b64b27c9f4f_activity.pkl b/backend/instance/sessions/532c309933543617750d9b64b27c9f4f_activity.pkl new file mode 100644 index 000000000..6400977f1 Binary files /dev/null and b/backend/instance/sessions/532c309933543617750d9b64b27c9f4f_activity.pkl differ diff --git a/backend/instance/sessions/535e38b7b6ea61cf32ab5365f5e8ae50_activity.pkl b/backend/instance/sessions/535e38b7b6ea61cf32ab5365f5e8ae50_activity.pkl new file mode 100644 index 000000000..b7a848d0b Binary files /dev/null and b/backend/instance/sessions/535e38b7b6ea61cf32ab5365f5e8ae50_activity.pkl differ diff --git a/backend/instance/sessions/539f640f072235bbbb9f07a2c2e604d3_activity.pkl b/backend/instance/sessions/539f640f072235bbbb9f07a2c2e604d3_activity.pkl new file mode 100644 index 000000000..c7e222e4a Binary files /dev/null and b/backend/instance/sessions/539f640f072235bbbb9f07a2c2e604d3_activity.pkl differ diff --git a/backend/instance/sessions/53c40876f6b04a4f4e0efe5545e44bf2_activity.pkl b/backend/instance/sessions/53c40876f6b04a4f4e0efe5545e44bf2_activity.pkl new file mode 100644 index 000000000..707c2291a Binary files /dev/null and b/backend/instance/sessions/53c40876f6b04a4f4e0efe5545e44bf2_activity.pkl differ diff --git a/backend/instance/sessions/53f5fd65c53a875ab9c66c29aaa645b7_activity.pkl b/backend/instance/sessions/53f5fd65c53a875ab9c66c29aaa645b7_activity.pkl new file mode 100644 index 000000000..9eb0a112a Binary files /dev/null and b/backend/instance/sessions/53f5fd65c53a875ab9c66c29aaa645b7_activity.pkl differ diff --git a/backend/instance/sessions/544718299f04a1c4eacdaf4dac230995_activity.pkl b/backend/instance/sessions/544718299f04a1c4eacdaf4dac230995_activity.pkl new file mode 100644 index 000000000..8f017a1b1 Binary files /dev/null and b/backend/instance/sessions/544718299f04a1c4eacdaf4dac230995_activity.pkl differ diff --git a/backend/instance/sessions/54517314ba590d0b97f2103b8bfad8a6_activity.pkl b/backend/instance/sessions/54517314ba590d0b97f2103b8bfad8a6_activity.pkl new file mode 100644 index 000000000..abe2b6390 Binary files /dev/null and b/backend/instance/sessions/54517314ba590d0b97f2103b8bfad8a6_activity.pkl differ diff --git a/backend/instance/sessions/54615b66c4fe7df099b30bf51a9f5037_activity.pkl b/backend/instance/sessions/54615b66c4fe7df099b30bf51a9f5037_activity.pkl new file mode 100644 index 000000000..969c2f58f Binary files /dev/null and b/backend/instance/sessions/54615b66c4fe7df099b30bf51a9f5037_activity.pkl differ diff --git a/backend/instance/sessions/5487ced8ffce164381d0530d770cab67_activity.pkl b/backend/instance/sessions/5487ced8ffce164381d0530d770cab67_activity.pkl new file mode 100644 index 000000000..129310bb7 Binary files /dev/null and b/backend/instance/sessions/5487ced8ffce164381d0530d770cab67_activity.pkl differ diff --git a/backend/instance/sessions/54d2480dd39fdc07b1dcd5ac297f8988_activity.pkl b/backend/instance/sessions/54d2480dd39fdc07b1dcd5ac297f8988_activity.pkl new file mode 100644 index 000000000..9abfd4fef Binary files /dev/null and b/backend/instance/sessions/54d2480dd39fdc07b1dcd5ac297f8988_activity.pkl differ diff --git a/backend/instance/sessions/54e8f45d3582b5ba36da279c17e5d31b_activity.pkl b/backend/instance/sessions/54e8f45d3582b5ba36da279c17e5d31b_activity.pkl new file mode 100644 index 000000000..92f76de79 Binary files /dev/null and b/backend/instance/sessions/54e8f45d3582b5ba36da279c17e5d31b_activity.pkl differ diff --git a/backend/instance/sessions/54f02c0cb66e5cc7e72194e1956e91ed_activity.pkl b/backend/instance/sessions/54f02c0cb66e5cc7e72194e1956e91ed_activity.pkl new file mode 100644 index 000000000..f401978c7 Binary files /dev/null and b/backend/instance/sessions/54f02c0cb66e5cc7e72194e1956e91ed_activity.pkl differ diff --git a/backend/instance/sessions/55b0a7c1e08332dd42ea9c954f4a38e6_activity.pkl b/backend/instance/sessions/55b0a7c1e08332dd42ea9c954f4a38e6_activity.pkl new file mode 100644 index 000000000..648786fb5 Binary files /dev/null and b/backend/instance/sessions/55b0a7c1e08332dd42ea9c954f4a38e6_activity.pkl differ diff --git a/backend/instance/sessions/56c9dc0998caea837b3e89879be28b48_activity.pkl b/backend/instance/sessions/56c9dc0998caea837b3e89879be28b48_activity.pkl new file mode 100644 index 000000000..6b815e04f Binary files /dev/null and b/backend/instance/sessions/56c9dc0998caea837b3e89879be28b48_activity.pkl differ diff --git a/backend/instance/sessions/573931edf5c2b936faa09456baaa1e07_activity.pkl b/backend/instance/sessions/573931edf5c2b936faa09456baaa1e07_activity.pkl new file mode 100644 index 000000000..7eebaf73d Binary files /dev/null and b/backend/instance/sessions/573931edf5c2b936faa09456baaa1e07_activity.pkl differ diff --git a/backend/instance/sessions/577823ab4b9d1b1ae9825a62f149da6c_activity.pkl b/backend/instance/sessions/577823ab4b9d1b1ae9825a62f149da6c_activity.pkl new file mode 100644 index 000000000..12979e15a Binary files /dev/null and b/backend/instance/sessions/577823ab4b9d1b1ae9825a62f149da6c_activity.pkl differ diff --git a/backend/instance/sessions/579ea84f98b76bb401bb0a2dc0567d6e_activity.pkl b/backend/instance/sessions/579ea84f98b76bb401bb0a2dc0567d6e_activity.pkl new file mode 100644 index 000000000..05cfafdad Binary files /dev/null and b/backend/instance/sessions/579ea84f98b76bb401bb0a2dc0567d6e_activity.pkl differ diff --git a/backend/instance/sessions/58458fe2fc753da7d8390a2da3528a89_activity.pkl b/backend/instance/sessions/58458fe2fc753da7d8390a2da3528a89_activity.pkl new file mode 100644 index 000000000..c4714ce37 Binary files /dev/null and b/backend/instance/sessions/58458fe2fc753da7d8390a2da3528a89_activity.pkl differ diff --git a/backend/instance/sessions/585b187de62f3e0bd2407fec898982d9_activity.pkl b/backend/instance/sessions/585b187de62f3e0bd2407fec898982d9_activity.pkl new file mode 100644 index 000000000..73898100a Binary files /dev/null and b/backend/instance/sessions/585b187de62f3e0bd2407fec898982d9_activity.pkl differ diff --git a/backend/instance/sessions/59fb95073f733f05476a1839272550ad_activity.pkl b/backend/instance/sessions/59fb95073f733f05476a1839272550ad_activity.pkl new file mode 100644 index 000000000..2b1f1c459 Binary files /dev/null and b/backend/instance/sessions/59fb95073f733f05476a1839272550ad_activity.pkl differ diff --git a/backend/instance/sessions/5a4f2ae1fb87a5d6aaeaf868ee436f4b_activity.pkl b/backend/instance/sessions/5a4f2ae1fb87a5d6aaeaf868ee436f4b_activity.pkl new file mode 100644 index 000000000..7d0bdab8a Binary files /dev/null and b/backend/instance/sessions/5a4f2ae1fb87a5d6aaeaf868ee436f4b_activity.pkl differ diff --git a/backend/instance/sessions/5a66f7c3d4027ff4690474ed13c39021_activity.pkl b/backend/instance/sessions/5a66f7c3d4027ff4690474ed13c39021_activity.pkl new file mode 100644 index 000000000..33d454e76 Binary files /dev/null and b/backend/instance/sessions/5a66f7c3d4027ff4690474ed13c39021_activity.pkl differ diff --git a/backend/instance/sessions/5a7fadf0c0e6c3547dbffdced2ae9f3f_activity.pkl b/backend/instance/sessions/5a7fadf0c0e6c3547dbffdced2ae9f3f_activity.pkl new file mode 100644 index 000000000..44330a090 Binary files /dev/null and b/backend/instance/sessions/5a7fadf0c0e6c3547dbffdced2ae9f3f_activity.pkl differ diff --git a/backend/instance/sessions/5ab8215cc0b5ba4fec2dd62f3773b8bb_activity.pkl b/backend/instance/sessions/5ab8215cc0b5ba4fec2dd62f3773b8bb_activity.pkl new file mode 100644 index 000000000..e0e6bd9cc Binary files /dev/null and b/backend/instance/sessions/5ab8215cc0b5ba4fec2dd62f3773b8bb_activity.pkl differ diff --git a/backend/instance/sessions/5b80850b18dd70471a276af6cd3bc7f5_activity.pkl b/backend/instance/sessions/5b80850b18dd70471a276af6cd3bc7f5_activity.pkl new file mode 100644 index 000000000..0c4c21808 Binary files /dev/null and b/backend/instance/sessions/5b80850b18dd70471a276af6cd3bc7f5_activity.pkl differ diff --git a/backend/instance/sessions/5b831812acdc98b75f5b60d33951e708_activity.pkl b/backend/instance/sessions/5b831812acdc98b75f5b60d33951e708_activity.pkl new file mode 100644 index 000000000..a24a67031 Binary files /dev/null and b/backend/instance/sessions/5b831812acdc98b75f5b60d33951e708_activity.pkl differ diff --git a/backend/instance/sessions/5bc9073cc0b604de41b80f0fa6285f2d_activity.pkl b/backend/instance/sessions/5bc9073cc0b604de41b80f0fa6285f2d_activity.pkl new file mode 100644 index 000000000..32157c93d Binary files /dev/null and b/backend/instance/sessions/5bc9073cc0b604de41b80f0fa6285f2d_activity.pkl differ diff --git a/backend/instance/sessions/5bd3cda0299d8bd560dca8eb1adc4a3e_activity.pkl b/backend/instance/sessions/5bd3cda0299d8bd560dca8eb1adc4a3e_activity.pkl new file mode 100644 index 000000000..0d0430cd7 Binary files /dev/null and b/backend/instance/sessions/5bd3cda0299d8bd560dca8eb1adc4a3e_activity.pkl differ diff --git a/backend/instance/sessions/5c1aaf420be4344b3693c4f91c8305f8_activity.pkl b/backend/instance/sessions/5c1aaf420be4344b3693c4f91c8305f8_activity.pkl new file mode 100644 index 000000000..11c1a94d6 Binary files /dev/null and b/backend/instance/sessions/5c1aaf420be4344b3693c4f91c8305f8_activity.pkl differ diff --git a/backend/instance/sessions/5c804aa869871a7d80c8d5a690993d52_activity.pkl b/backend/instance/sessions/5c804aa869871a7d80c8d5a690993d52_activity.pkl new file mode 100644 index 000000000..79ecba475 Binary files /dev/null and b/backend/instance/sessions/5c804aa869871a7d80c8d5a690993d52_activity.pkl differ diff --git a/backend/instance/sessions/5d35dc49b282abdf6b963ffa1d922ebd_activity.pkl b/backend/instance/sessions/5d35dc49b282abdf6b963ffa1d922ebd_activity.pkl new file mode 100644 index 000000000..54c509e3c Binary files /dev/null and b/backend/instance/sessions/5d35dc49b282abdf6b963ffa1d922ebd_activity.pkl differ diff --git a/backend/instance/sessions/5dab4af9c6559a08445a784b762a0dd0_activity.pkl b/backend/instance/sessions/5dab4af9c6559a08445a784b762a0dd0_activity.pkl new file mode 100644 index 000000000..729838dc2 Binary files /dev/null and b/backend/instance/sessions/5dab4af9c6559a08445a784b762a0dd0_activity.pkl differ diff --git a/backend/instance/sessions/5dd8b2ac9c471e68a1a439cd0f411879_activity.pkl b/backend/instance/sessions/5dd8b2ac9c471e68a1a439cd0f411879_activity.pkl new file mode 100644 index 000000000..6c1d5e869 Binary files /dev/null and b/backend/instance/sessions/5dd8b2ac9c471e68a1a439cd0f411879_activity.pkl differ diff --git a/backend/instance/sessions/5de4eb9884039b2e715fe2e839698aa2_activity.pkl b/backend/instance/sessions/5de4eb9884039b2e715fe2e839698aa2_activity.pkl new file mode 100644 index 000000000..b7dfee908 Binary files /dev/null and b/backend/instance/sessions/5de4eb9884039b2e715fe2e839698aa2_activity.pkl differ diff --git a/backend/instance/sessions/5e16e836f4553febfccbc27ebd395dac_activity.pkl b/backend/instance/sessions/5e16e836f4553febfccbc27ebd395dac_activity.pkl new file mode 100644 index 000000000..c51f5f8f3 Binary files /dev/null and b/backend/instance/sessions/5e16e836f4553febfccbc27ebd395dac_activity.pkl differ diff --git a/backend/instance/sessions/5e59e96f71090b39c393c65dfcedbb51_activity.pkl b/backend/instance/sessions/5e59e96f71090b39c393c65dfcedbb51_activity.pkl new file mode 100644 index 000000000..140e0bd4c Binary files /dev/null and b/backend/instance/sessions/5e59e96f71090b39c393c65dfcedbb51_activity.pkl differ diff --git a/backend/instance/sessions/5e9470853356c69beec87a69db666da2_activity.pkl b/backend/instance/sessions/5e9470853356c69beec87a69db666da2_activity.pkl new file mode 100644 index 000000000..5de66b63e Binary files /dev/null and b/backend/instance/sessions/5e9470853356c69beec87a69db666da2_activity.pkl differ diff --git a/backend/instance/sessions/5ec8d1c5a6bf6c09d57e0da8c3769416_activity.pkl b/backend/instance/sessions/5ec8d1c5a6bf6c09d57e0da8c3769416_activity.pkl new file mode 100644 index 000000000..fafcc4685 Binary files /dev/null and b/backend/instance/sessions/5ec8d1c5a6bf6c09d57e0da8c3769416_activity.pkl differ diff --git a/backend/instance/sessions/5f29f0762183207102fb860a6d8d99f5_activity.pkl b/backend/instance/sessions/5f29f0762183207102fb860a6d8d99f5_activity.pkl new file mode 100644 index 000000000..c6411c2c1 Binary files /dev/null and b/backend/instance/sessions/5f29f0762183207102fb860a6d8d99f5_activity.pkl differ diff --git a/backend/instance/sessions/5f8fbb414d3e62212e8eda6b73edaa87_activity.pkl b/backend/instance/sessions/5f8fbb414d3e62212e8eda6b73edaa87_activity.pkl new file mode 100644 index 000000000..2144af08c Binary files /dev/null and b/backend/instance/sessions/5f8fbb414d3e62212e8eda6b73edaa87_activity.pkl differ diff --git a/backend/instance/sessions/5f91902d05fe12a82ecaf92a2783c04e_activity.pkl b/backend/instance/sessions/5f91902d05fe12a82ecaf92a2783c04e_activity.pkl new file mode 100644 index 000000000..0ffda13c6 Binary files /dev/null and b/backend/instance/sessions/5f91902d05fe12a82ecaf92a2783c04e_activity.pkl differ diff --git a/backend/instance/sessions/5fa0a5534d442c69dede7241cdd59041_activity.pkl b/backend/instance/sessions/5fa0a5534d442c69dede7241cdd59041_activity.pkl new file mode 100644 index 000000000..7f8f0d2f9 Binary files /dev/null and b/backend/instance/sessions/5fa0a5534d442c69dede7241cdd59041_activity.pkl differ diff --git a/backend/instance/sessions/5fe46f13259bec80649a6eeb9b63ad65_activity.pkl b/backend/instance/sessions/5fe46f13259bec80649a6eeb9b63ad65_activity.pkl new file mode 100644 index 000000000..eb45f0e0d Binary files /dev/null and b/backend/instance/sessions/5fe46f13259bec80649a6eeb9b63ad65_activity.pkl differ diff --git a/backend/instance/sessions/5ff24f0d8a79b77fb26dcef543af0969_activity.pkl b/backend/instance/sessions/5ff24f0d8a79b77fb26dcef543af0969_activity.pkl new file mode 100644 index 000000000..b4cefe8f1 Binary files /dev/null and b/backend/instance/sessions/5ff24f0d8a79b77fb26dcef543af0969_activity.pkl differ diff --git a/backend/instance/sessions/6040c72f21910ef6acbfba5576256dee_activity.pkl b/backend/instance/sessions/6040c72f21910ef6acbfba5576256dee_activity.pkl new file mode 100644 index 000000000..c58db6e31 Binary files /dev/null and b/backend/instance/sessions/6040c72f21910ef6acbfba5576256dee_activity.pkl differ diff --git a/backend/instance/sessions/6074157d8fb5d8e9d96dd496e799547e_activity.pkl b/backend/instance/sessions/6074157d8fb5d8e9d96dd496e799547e_activity.pkl new file mode 100644 index 000000000..dee79fc5d Binary files /dev/null and b/backend/instance/sessions/6074157d8fb5d8e9d96dd496e799547e_activity.pkl differ diff --git a/backend/instance/sessions/6099e582de2bad9b8ab92f4a50fde152_activity.pkl b/backend/instance/sessions/6099e582de2bad9b8ab92f4a50fde152_activity.pkl new file mode 100644 index 000000000..efbf68781 Binary files /dev/null and b/backend/instance/sessions/6099e582de2bad9b8ab92f4a50fde152_activity.pkl differ diff --git a/backend/instance/sessions/60a7caa86e52bf1bd16a6505d348a739_activity.pkl b/backend/instance/sessions/60a7caa86e52bf1bd16a6505d348a739_activity.pkl new file mode 100644 index 000000000..65b291965 Binary files /dev/null and b/backend/instance/sessions/60a7caa86e52bf1bd16a6505d348a739_activity.pkl differ diff --git a/backend/instance/sessions/61024a292412acbe1975a52c096dae82_activity.pkl b/backend/instance/sessions/61024a292412acbe1975a52c096dae82_activity.pkl new file mode 100644 index 000000000..ec8bd0a05 Binary files /dev/null and b/backend/instance/sessions/61024a292412acbe1975a52c096dae82_activity.pkl differ diff --git a/backend/instance/sessions/62ca20abcacccf98d99480e302fc4f32_activity.pkl b/backend/instance/sessions/62ca20abcacccf98d99480e302fc4f32_activity.pkl new file mode 100644 index 000000000..9a4aada3e Binary files /dev/null and b/backend/instance/sessions/62ca20abcacccf98d99480e302fc4f32_activity.pkl differ diff --git a/backend/instance/sessions/62f97c3b5e91ad7775f3d4a0882ee992_activity.pkl b/backend/instance/sessions/62f97c3b5e91ad7775f3d4a0882ee992_activity.pkl new file mode 100644 index 000000000..07352f155 Binary files /dev/null and b/backend/instance/sessions/62f97c3b5e91ad7775f3d4a0882ee992_activity.pkl differ diff --git a/backend/instance/sessions/63d81571cd539eeb2e956b8aa1b7f667_activity.pkl b/backend/instance/sessions/63d81571cd539eeb2e956b8aa1b7f667_activity.pkl new file mode 100644 index 000000000..7c58060ca Binary files /dev/null and b/backend/instance/sessions/63d81571cd539eeb2e956b8aa1b7f667_activity.pkl differ diff --git a/backend/instance/sessions/63ee56d87c325a9718ece955274e294f_activity.pkl b/backend/instance/sessions/63ee56d87c325a9718ece955274e294f_activity.pkl new file mode 100644 index 000000000..2fd496d4c Binary files /dev/null and b/backend/instance/sessions/63ee56d87c325a9718ece955274e294f_activity.pkl differ diff --git a/backend/instance/sessions/647360060441a043b5059ef10e4a2ef8_activity.pkl b/backend/instance/sessions/647360060441a043b5059ef10e4a2ef8_activity.pkl new file mode 100644 index 000000000..4e41a00e5 Binary files /dev/null and b/backend/instance/sessions/647360060441a043b5059ef10e4a2ef8_activity.pkl differ diff --git a/backend/instance/sessions/650cb5ec17493c701d1acda943aa1edc_activity.pkl b/backend/instance/sessions/650cb5ec17493c701d1acda943aa1edc_activity.pkl new file mode 100644 index 000000000..ecef4b8cb Binary files /dev/null and b/backend/instance/sessions/650cb5ec17493c701d1acda943aa1edc_activity.pkl differ diff --git a/backend/instance/sessions/661983b47a791d07644cc6229596f1b9_activity.pkl b/backend/instance/sessions/661983b47a791d07644cc6229596f1b9_activity.pkl new file mode 100644 index 000000000..8c8f29423 Binary files /dev/null and b/backend/instance/sessions/661983b47a791d07644cc6229596f1b9_activity.pkl differ diff --git a/backend/instance/sessions/66434a17ed10b377b5f19ce3aa70d73e_activity.pkl b/backend/instance/sessions/66434a17ed10b377b5f19ce3aa70d73e_activity.pkl new file mode 100644 index 000000000..4819d71dd Binary files /dev/null and b/backend/instance/sessions/66434a17ed10b377b5f19ce3aa70d73e_activity.pkl differ diff --git a/backend/instance/sessions/66464423c495fa81a8b88bb19e8fb96e_activity.pkl b/backend/instance/sessions/66464423c495fa81a8b88bb19e8fb96e_activity.pkl new file mode 100644 index 000000000..b4a38da76 Binary files /dev/null and b/backend/instance/sessions/66464423c495fa81a8b88bb19e8fb96e_activity.pkl differ diff --git a/backend/instance/sessions/669b95e4a52ac33a5a169ea5ae864f71_activity.pkl b/backend/instance/sessions/669b95e4a52ac33a5a169ea5ae864f71_activity.pkl new file mode 100644 index 000000000..c32757ad5 Binary files /dev/null and b/backend/instance/sessions/669b95e4a52ac33a5a169ea5ae864f71_activity.pkl differ diff --git a/backend/instance/sessions/66b91226bf88d86533d06d75ffab1e4d_activity.pkl b/backend/instance/sessions/66b91226bf88d86533d06d75ffab1e4d_activity.pkl new file mode 100644 index 000000000..e8e82bb4b Binary files /dev/null and b/backend/instance/sessions/66b91226bf88d86533d06d75ffab1e4d_activity.pkl differ diff --git a/backend/instance/sessions/66cdf2e5ad75fe45c2dd50d02c50f713_activity.pkl b/backend/instance/sessions/66cdf2e5ad75fe45c2dd50d02c50f713_activity.pkl new file mode 100644 index 000000000..fafab53e1 Binary files /dev/null and b/backend/instance/sessions/66cdf2e5ad75fe45c2dd50d02c50f713_activity.pkl differ diff --git a/backend/instance/sessions/66f96991f70dc3870c1f5bf2d87eadb6_activity.pkl b/backend/instance/sessions/66f96991f70dc3870c1f5bf2d87eadb6_activity.pkl new file mode 100644 index 000000000..cd098bc59 Binary files /dev/null and b/backend/instance/sessions/66f96991f70dc3870c1f5bf2d87eadb6_activity.pkl differ diff --git a/backend/instance/sessions/670564e7baabb96798477ec4508f815b_activity.pkl b/backend/instance/sessions/670564e7baabb96798477ec4508f815b_activity.pkl new file mode 100644 index 000000000..f529b2897 Binary files /dev/null and b/backend/instance/sessions/670564e7baabb96798477ec4508f815b_activity.pkl differ diff --git a/backend/instance/sessions/67136796e539281165516d2455c0cd9a_activity.pkl b/backend/instance/sessions/67136796e539281165516d2455c0cd9a_activity.pkl new file mode 100644 index 000000000..616e3957b Binary files /dev/null and b/backend/instance/sessions/67136796e539281165516d2455c0cd9a_activity.pkl differ diff --git a/backend/instance/sessions/6741fae62bf255a52bb08c41386fe1ac_activity.pkl b/backend/instance/sessions/6741fae62bf255a52bb08c41386fe1ac_activity.pkl new file mode 100644 index 000000000..1a90216ea Binary files /dev/null and b/backend/instance/sessions/6741fae62bf255a52bb08c41386fe1ac_activity.pkl differ diff --git a/backend/instance/sessions/6803163332d2d3bd04fa22a4ace0294b_activity.pkl b/backend/instance/sessions/6803163332d2d3bd04fa22a4ace0294b_activity.pkl new file mode 100644 index 000000000..46a90a5c5 Binary files /dev/null and b/backend/instance/sessions/6803163332d2d3bd04fa22a4ace0294b_activity.pkl differ diff --git a/backend/instance/sessions/680be33e8e5cd1eb25418c73ee3a8c8b_activity.pkl b/backend/instance/sessions/680be33e8e5cd1eb25418c73ee3a8c8b_activity.pkl new file mode 100644 index 000000000..d25de0da1 Binary files /dev/null and b/backend/instance/sessions/680be33e8e5cd1eb25418c73ee3a8c8b_activity.pkl differ diff --git a/backend/instance/sessions/68663928eb790e26e3219f5274b6a336_activity.pkl b/backend/instance/sessions/68663928eb790e26e3219f5274b6a336_activity.pkl new file mode 100644 index 000000000..3d9fe8069 Binary files /dev/null and b/backend/instance/sessions/68663928eb790e26e3219f5274b6a336_activity.pkl differ diff --git a/backend/instance/sessions/6866d2cd1a6352e938d15bb3f1aa6cd1_activity.pkl b/backend/instance/sessions/6866d2cd1a6352e938d15bb3f1aa6cd1_activity.pkl new file mode 100644 index 000000000..3dc18b3a6 Binary files /dev/null and b/backend/instance/sessions/6866d2cd1a6352e938d15bb3f1aa6cd1_activity.pkl differ diff --git a/backend/instance/sessions/6881371d2428f8d4bbea220fee0576ae_activity.pkl b/backend/instance/sessions/6881371d2428f8d4bbea220fee0576ae_activity.pkl new file mode 100644 index 000000000..6dbd108b6 Binary files /dev/null and b/backend/instance/sessions/6881371d2428f8d4bbea220fee0576ae_activity.pkl differ diff --git a/backend/instance/sessions/68b45a480bfa7ece66b1444d1934518d_activity.pkl b/backend/instance/sessions/68b45a480bfa7ece66b1444d1934518d_activity.pkl new file mode 100644 index 000000000..c48ce3575 Binary files /dev/null and b/backend/instance/sessions/68b45a480bfa7ece66b1444d1934518d_activity.pkl differ diff --git a/backend/instance/sessions/695b7d8295ed4267b716c7ba325fb654_activity.pkl b/backend/instance/sessions/695b7d8295ed4267b716c7ba325fb654_activity.pkl new file mode 100644 index 000000000..42474114f Binary files /dev/null and b/backend/instance/sessions/695b7d8295ed4267b716c7ba325fb654_activity.pkl differ diff --git a/backend/instance/sessions/6967826753240b951176d96b58808dce_activity.pkl b/backend/instance/sessions/6967826753240b951176d96b58808dce_activity.pkl new file mode 100644 index 000000000..9e141d443 Binary files /dev/null and b/backend/instance/sessions/6967826753240b951176d96b58808dce_activity.pkl differ diff --git a/backend/instance/sessions/69c7bbd9d8ed7886af88fd83eae4944d_activity.pkl b/backend/instance/sessions/69c7bbd9d8ed7886af88fd83eae4944d_activity.pkl new file mode 100644 index 000000000..d557b18d4 Binary files /dev/null and b/backend/instance/sessions/69c7bbd9d8ed7886af88fd83eae4944d_activity.pkl differ diff --git a/backend/instance/sessions/6a0ae6b3595daad6bd9825fd10b32db0_activity.pkl b/backend/instance/sessions/6a0ae6b3595daad6bd9825fd10b32db0_activity.pkl new file mode 100644 index 000000000..b7076d2a9 Binary files /dev/null and b/backend/instance/sessions/6a0ae6b3595daad6bd9825fd10b32db0_activity.pkl differ diff --git a/backend/instance/sessions/6a44d3b1a4a7a3970be0ea0311114bfe_activity.pkl b/backend/instance/sessions/6a44d3b1a4a7a3970be0ea0311114bfe_activity.pkl new file mode 100644 index 000000000..a0970bcc0 Binary files /dev/null and b/backend/instance/sessions/6a44d3b1a4a7a3970be0ea0311114bfe_activity.pkl differ diff --git a/backend/instance/sessions/6ac9727776e3d374a065b114b9baf05f_activity.pkl b/backend/instance/sessions/6ac9727776e3d374a065b114b9baf05f_activity.pkl new file mode 100644 index 000000000..be32412c5 Binary files /dev/null and b/backend/instance/sessions/6ac9727776e3d374a065b114b9baf05f_activity.pkl differ diff --git a/backend/instance/sessions/6ae5e361dda6e1b7b8f956210514172b_activity.pkl b/backend/instance/sessions/6ae5e361dda6e1b7b8f956210514172b_activity.pkl new file mode 100644 index 000000000..98950c900 Binary files /dev/null and b/backend/instance/sessions/6ae5e361dda6e1b7b8f956210514172b_activity.pkl differ diff --git a/backend/instance/sessions/6af10f43fcba084d3bf6fc6fbbe74310_activity.pkl b/backend/instance/sessions/6af10f43fcba084d3bf6fc6fbbe74310_activity.pkl new file mode 100644 index 000000000..a3fb6c06e Binary files /dev/null and b/backend/instance/sessions/6af10f43fcba084d3bf6fc6fbbe74310_activity.pkl differ diff --git a/backend/instance/sessions/6af12b7e187f31b1e3ed66516eadc60a_activity.pkl b/backend/instance/sessions/6af12b7e187f31b1e3ed66516eadc60a_activity.pkl new file mode 100644 index 000000000..e69f3699f Binary files /dev/null and b/backend/instance/sessions/6af12b7e187f31b1e3ed66516eadc60a_activity.pkl differ diff --git a/backend/instance/sessions/6b215b3ac5860c3e683c5651fb4c2f8e_activity.pkl b/backend/instance/sessions/6b215b3ac5860c3e683c5651fb4c2f8e_activity.pkl new file mode 100644 index 000000000..8dd249296 Binary files /dev/null and b/backend/instance/sessions/6b215b3ac5860c3e683c5651fb4c2f8e_activity.pkl differ diff --git a/backend/instance/sessions/6ba0c612d0f72d34443b3c7fd28e6ae5_activity.pkl b/backend/instance/sessions/6ba0c612d0f72d34443b3c7fd28e6ae5_activity.pkl new file mode 100644 index 000000000..043346d07 Binary files /dev/null and b/backend/instance/sessions/6ba0c612d0f72d34443b3c7fd28e6ae5_activity.pkl differ diff --git a/backend/instance/sessions/6bd158e2142ffe9a66bd13cc4835dcb8_activity.pkl b/backend/instance/sessions/6bd158e2142ffe9a66bd13cc4835dcb8_activity.pkl new file mode 100644 index 000000000..a16fd085b Binary files /dev/null and b/backend/instance/sessions/6bd158e2142ffe9a66bd13cc4835dcb8_activity.pkl differ diff --git a/backend/instance/sessions/6c88299639f3f3f586119a9682e57a2e_activity.pkl b/backend/instance/sessions/6c88299639f3f3f586119a9682e57a2e_activity.pkl new file mode 100644 index 000000000..194d46c5b Binary files /dev/null and b/backend/instance/sessions/6c88299639f3f3f586119a9682e57a2e_activity.pkl differ diff --git a/backend/instance/sessions/6c9e07b134721ba642cbd38cb98472e4_activity.pkl b/backend/instance/sessions/6c9e07b134721ba642cbd38cb98472e4_activity.pkl new file mode 100644 index 000000000..80af1970b Binary files /dev/null and b/backend/instance/sessions/6c9e07b134721ba642cbd38cb98472e4_activity.pkl differ diff --git a/backend/instance/sessions/6d10ca9fe828c6b924ac08b68ae22ed0_activity.pkl b/backend/instance/sessions/6d10ca9fe828c6b924ac08b68ae22ed0_activity.pkl new file mode 100644 index 000000000..4e6dce2d7 Binary files /dev/null and b/backend/instance/sessions/6d10ca9fe828c6b924ac08b68ae22ed0_activity.pkl differ diff --git a/backend/instance/sessions/6d9f3a838a982963656acd4b12b80284_activity.pkl b/backend/instance/sessions/6d9f3a838a982963656acd4b12b80284_activity.pkl new file mode 100644 index 000000000..fc9e1593e Binary files /dev/null and b/backend/instance/sessions/6d9f3a838a982963656acd4b12b80284_activity.pkl differ diff --git a/backend/instance/sessions/6dfc7168d17f540ca6cae760bb812bc6_activity.pkl b/backend/instance/sessions/6dfc7168d17f540ca6cae760bb812bc6_activity.pkl new file mode 100644 index 000000000..10fcb61b9 Binary files /dev/null and b/backend/instance/sessions/6dfc7168d17f540ca6cae760bb812bc6_activity.pkl differ diff --git a/backend/instance/sessions/6e14ca605d3830297dcc586eac6bfd0c_activity.pkl b/backend/instance/sessions/6e14ca605d3830297dcc586eac6bfd0c_activity.pkl new file mode 100644 index 000000000..5327faa8b Binary files /dev/null and b/backend/instance/sessions/6e14ca605d3830297dcc586eac6bfd0c_activity.pkl differ diff --git a/backend/instance/sessions/6ec0a68a949b94cae6f20e6d14ccc8e5_activity.pkl b/backend/instance/sessions/6ec0a68a949b94cae6f20e6d14ccc8e5_activity.pkl new file mode 100644 index 000000000..849ceebc9 Binary files /dev/null and b/backend/instance/sessions/6ec0a68a949b94cae6f20e6d14ccc8e5_activity.pkl differ diff --git a/backend/instance/sessions/6ee946f16167b7c86ab46d7483ef2701_activity.pkl b/backend/instance/sessions/6ee946f16167b7c86ab46d7483ef2701_activity.pkl new file mode 100644 index 000000000..7f5196e1a Binary files /dev/null and b/backend/instance/sessions/6ee946f16167b7c86ab46d7483ef2701_activity.pkl differ diff --git a/backend/instance/sessions/6f042ed19231e9e1c0f7919fe5dfdb9d_activity.pkl b/backend/instance/sessions/6f042ed19231e9e1c0f7919fe5dfdb9d_activity.pkl new file mode 100644 index 000000000..9da707a84 Binary files /dev/null and b/backend/instance/sessions/6f042ed19231e9e1c0f7919fe5dfdb9d_activity.pkl differ diff --git a/backend/instance/sessions/6f267bd55c279c3ac63acf9c22a4bac4_activity.pkl b/backend/instance/sessions/6f267bd55c279c3ac63acf9c22a4bac4_activity.pkl new file mode 100644 index 000000000..1ad148efb Binary files /dev/null and b/backend/instance/sessions/6f267bd55c279c3ac63acf9c22a4bac4_activity.pkl differ diff --git a/backend/instance/sessions/6f32837e5f3ca5000c4acd0021aa8e2e_activity.pkl b/backend/instance/sessions/6f32837e5f3ca5000c4acd0021aa8e2e_activity.pkl new file mode 100644 index 000000000..588e74500 Binary files /dev/null and b/backend/instance/sessions/6f32837e5f3ca5000c4acd0021aa8e2e_activity.pkl differ diff --git a/backend/instance/sessions/6f5d93d5fccbc9a306d612c8a41e3b8d_activity.pkl b/backend/instance/sessions/6f5d93d5fccbc9a306d612c8a41e3b8d_activity.pkl new file mode 100644 index 000000000..3b0fdc78f Binary files /dev/null and b/backend/instance/sessions/6f5d93d5fccbc9a306d612c8a41e3b8d_activity.pkl differ diff --git a/backend/instance/sessions/709028f4a6a4117ba674f61ba40d8325_activity.pkl b/backend/instance/sessions/709028f4a6a4117ba674f61ba40d8325_activity.pkl new file mode 100644 index 000000000..3e7be1858 Binary files /dev/null and b/backend/instance/sessions/709028f4a6a4117ba674f61ba40d8325_activity.pkl differ diff --git a/backend/instance/sessions/7090722ed3cdf933ea3af9a5c0091106_activity.pkl b/backend/instance/sessions/7090722ed3cdf933ea3af9a5c0091106_activity.pkl new file mode 100644 index 000000000..f04154f3a Binary files /dev/null and b/backend/instance/sessions/7090722ed3cdf933ea3af9a5c0091106_activity.pkl differ diff --git a/backend/instance/sessions/70c708797663412643b8655ae1909c0a_activity.pkl b/backend/instance/sessions/70c708797663412643b8655ae1909c0a_activity.pkl new file mode 100644 index 000000000..67764affb Binary files /dev/null and b/backend/instance/sessions/70c708797663412643b8655ae1909c0a_activity.pkl differ diff --git a/backend/instance/sessions/71f06ba97527cf882e9103d06e3ed3e9_activity.pkl b/backend/instance/sessions/71f06ba97527cf882e9103d06e3ed3e9_activity.pkl new file mode 100644 index 000000000..12d480f7b Binary files /dev/null and b/backend/instance/sessions/71f06ba97527cf882e9103d06e3ed3e9_activity.pkl differ diff --git a/backend/instance/sessions/73095bb11fdf7de5199f55fa90d3d570_activity.pkl b/backend/instance/sessions/73095bb11fdf7de5199f55fa90d3d570_activity.pkl new file mode 100644 index 000000000..7174996dc Binary files /dev/null and b/backend/instance/sessions/73095bb11fdf7de5199f55fa90d3d570_activity.pkl differ diff --git a/backend/instance/sessions/738f3a91b47d8c2b4d6297d7d6a8a641_activity.pkl b/backend/instance/sessions/738f3a91b47d8c2b4d6297d7d6a8a641_activity.pkl new file mode 100644 index 000000000..526bbac88 Binary files /dev/null and b/backend/instance/sessions/738f3a91b47d8c2b4d6297d7d6a8a641_activity.pkl differ diff --git a/backend/instance/sessions/74e6519f4220b4b68222090c22618552_activity.pkl b/backend/instance/sessions/74e6519f4220b4b68222090c22618552_activity.pkl new file mode 100644 index 000000000..bd059e8cc Binary files /dev/null and b/backend/instance/sessions/74e6519f4220b4b68222090c22618552_activity.pkl differ diff --git a/backend/instance/sessions/7556e2c2c5194fc25526e4c15519d696_activity.pkl b/backend/instance/sessions/7556e2c2c5194fc25526e4c15519d696_activity.pkl new file mode 100644 index 000000000..65066c3f9 Binary files /dev/null and b/backend/instance/sessions/7556e2c2c5194fc25526e4c15519d696_activity.pkl differ diff --git a/backend/instance/sessions/755e3da4d120d679614809b03e2a3b42_activity.pkl b/backend/instance/sessions/755e3da4d120d679614809b03e2a3b42_activity.pkl new file mode 100644 index 000000000..c3bc23653 Binary files /dev/null and b/backend/instance/sessions/755e3da4d120d679614809b03e2a3b42_activity.pkl differ diff --git a/backend/instance/sessions/75986cb275045065445d0ded2158ad93_activity.pkl b/backend/instance/sessions/75986cb275045065445d0ded2158ad93_activity.pkl new file mode 100644 index 000000000..17ce4a084 Binary files /dev/null and b/backend/instance/sessions/75986cb275045065445d0ded2158ad93_activity.pkl differ diff --git a/backend/instance/sessions/75a9efccab2c448361634009c32ac374_activity.pkl b/backend/instance/sessions/75a9efccab2c448361634009c32ac374_activity.pkl new file mode 100644 index 000000000..bb5363d90 Binary files /dev/null and b/backend/instance/sessions/75a9efccab2c448361634009c32ac374_activity.pkl differ diff --git a/backend/instance/sessions/76395163a8bfb618d14fb7a886e0994e_activity.pkl b/backend/instance/sessions/76395163a8bfb618d14fb7a886e0994e_activity.pkl new file mode 100644 index 000000000..ffff00051 Binary files /dev/null and b/backend/instance/sessions/76395163a8bfb618d14fb7a886e0994e_activity.pkl differ diff --git a/backend/instance/sessions/76663253346e7bb36aec7bc5263528be_activity.pkl b/backend/instance/sessions/76663253346e7bb36aec7bc5263528be_activity.pkl new file mode 100644 index 000000000..81fed252e Binary files /dev/null and b/backend/instance/sessions/76663253346e7bb36aec7bc5263528be_activity.pkl differ diff --git a/backend/instance/sessions/76cbfe8ce8599ea1f5be43055069c982_activity.pkl b/backend/instance/sessions/76cbfe8ce8599ea1f5be43055069c982_activity.pkl new file mode 100644 index 000000000..926f88f06 Binary files /dev/null and b/backend/instance/sessions/76cbfe8ce8599ea1f5be43055069c982_activity.pkl differ diff --git a/backend/instance/sessions/76f36f32c2bbd84cf08ea9b8548313ee_activity.pkl b/backend/instance/sessions/76f36f32c2bbd84cf08ea9b8548313ee_activity.pkl new file mode 100644 index 000000000..4b9ab3711 Binary files /dev/null and b/backend/instance/sessions/76f36f32c2bbd84cf08ea9b8548313ee_activity.pkl differ diff --git a/backend/instance/sessions/7820f188fa44a8150f0dd392934d58de_activity.pkl b/backend/instance/sessions/7820f188fa44a8150f0dd392934d58de_activity.pkl new file mode 100644 index 000000000..018244e28 Binary files /dev/null and b/backend/instance/sessions/7820f188fa44a8150f0dd392934d58de_activity.pkl differ diff --git a/backend/instance/sessions/78d833eae0ffd3eebdd388098b4566a4_activity.pkl b/backend/instance/sessions/78d833eae0ffd3eebdd388098b4566a4_activity.pkl new file mode 100644 index 000000000..6a0cc1d10 Binary files /dev/null and b/backend/instance/sessions/78d833eae0ffd3eebdd388098b4566a4_activity.pkl differ diff --git a/backend/instance/sessions/79928df6af5325366d806b4b61b339d2_activity.pkl b/backend/instance/sessions/79928df6af5325366d806b4b61b339d2_activity.pkl new file mode 100644 index 000000000..1d425e9e9 Binary files /dev/null and b/backend/instance/sessions/79928df6af5325366d806b4b61b339d2_activity.pkl differ diff --git a/backend/instance/sessions/79b21c8de9a38274e576a81ed3f4cc65_activity.pkl b/backend/instance/sessions/79b21c8de9a38274e576a81ed3f4cc65_activity.pkl new file mode 100644 index 000000000..2bc80f763 Binary files /dev/null and b/backend/instance/sessions/79b21c8de9a38274e576a81ed3f4cc65_activity.pkl differ diff --git a/backend/instance/sessions/7a4f905fb337456a13ee418477d746d6_activity.pkl b/backend/instance/sessions/7a4f905fb337456a13ee418477d746d6_activity.pkl new file mode 100644 index 000000000..ceb1a08a7 Binary files /dev/null and b/backend/instance/sessions/7a4f905fb337456a13ee418477d746d6_activity.pkl differ diff --git a/backend/instance/sessions/7b1ece810977385ec9118768bdd2dca6_activity.pkl b/backend/instance/sessions/7b1ece810977385ec9118768bdd2dca6_activity.pkl new file mode 100644 index 000000000..980f2bae3 Binary files /dev/null and b/backend/instance/sessions/7b1ece810977385ec9118768bdd2dca6_activity.pkl differ diff --git a/backend/instance/sessions/7b96f548747892988caf9dc34076ad04_activity.pkl b/backend/instance/sessions/7b96f548747892988caf9dc34076ad04_activity.pkl new file mode 100644 index 000000000..a38d37a1b Binary files /dev/null and b/backend/instance/sessions/7b96f548747892988caf9dc34076ad04_activity.pkl differ diff --git a/backend/instance/sessions/7c141247f0336f40006bba4119189e4c_activity.pkl b/backend/instance/sessions/7c141247f0336f40006bba4119189e4c_activity.pkl new file mode 100644 index 000000000..a0fd21fc9 Binary files /dev/null and b/backend/instance/sessions/7c141247f0336f40006bba4119189e4c_activity.pkl differ diff --git a/backend/instance/sessions/7c625fdd6885ebba9133efe1984e86cf_activity.pkl b/backend/instance/sessions/7c625fdd6885ebba9133efe1984e86cf_activity.pkl new file mode 100644 index 000000000..8ede11a6a Binary files /dev/null and b/backend/instance/sessions/7c625fdd6885ebba9133efe1984e86cf_activity.pkl differ diff --git a/backend/instance/sessions/7cd63556013078d11af4486fca2a7ebc_activity.pkl b/backend/instance/sessions/7cd63556013078d11af4486fca2a7ebc_activity.pkl new file mode 100644 index 000000000..37c5a382c Binary files /dev/null and b/backend/instance/sessions/7cd63556013078d11af4486fca2a7ebc_activity.pkl differ diff --git a/backend/instance/sessions/7ce38bfc08bd0c68391ea394d97b5144_activity.pkl b/backend/instance/sessions/7ce38bfc08bd0c68391ea394d97b5144_activity.pkl new file mode 100644 index 000000000..f0ea861fc Binary files /dev/null and b/backend/instance/sessions/7ce38bfc08bd0c68391ea394d97b5144_activity.pkl differ diff --git a/backend/instance/sessions/7ce4c6786459e0fe2ffbeb5718893bb1_activity.pkl b/backend/instance/sessions/7ce4c6786459e0fe2ffbeb5718893bb1_activity.pkl new file mode 100644 index 000000000..b2d63a5c9 Binary files /dev/null and b/backend/instance/sessions/7ce4c6786459e0fe2ffbeb5718893bb1_activity.pkl differ diff --git a/backend/instance/sessions/7d02f1ff3199f4e456f55c555185d86e_activity.pkl b/backend/instance/sessions/7d02f1ff3199f4e456f55c555185d86e_activity.pkl new file mode 100644 index 000000000..13bcaf7fa Binary files /dev/null and b/backend/instance/sessions/7d02f1ff3199f4e456f55c555185d86e_activity.pkl differ diff --git a/backend/instance/sessions/7d79fe02206075a3858b2d1b6f3a7fe9_activity.pkl b/backend/instance/sessions/7d79fe02206075a3858b2d1b6f3a7fe9_activity.pkl new file mode 100644 index 000000000..65620c0ec Binary files /dev/null and b/backend/instance/sessions/7d79fe02206075a3858b2d1b6f3a7fe9_activity.pkl differ diff --git a/backend/instance/sessions/7d889ef89df1d85f9b97862641845593_activity.pkl b/backend/instance/sessions/7d889ef89df1d85f9b97862641845593_activity.pkl new file mode 100644 index 000000000..e73fce8bb Binary files /dev/null and b/backend/instance/sessions/7d889ef89df1d85f9b97862641845593_activity.pkl differ diff --git a/backend/instance/sessions/7d9786f0284d08ebc115bb67c6b7d5f3_activity.pkl b/backend/instance/sessions/7d9786f0284d08ebc115bb67c6b7d5f3_activity.pkl new file mode 100644 index 000000000..318ed67b3 Binary files /dev/null and b/backend/instance/sessions/7d9786f0284d08ebc115bb67c6b7d5f3_activity.pkl differ diff --git a/backend/instance/sessions/7dc727b9d75d87ef3a243a3f61da9c98_activity.pkl b/backend/instance/sessions/7dc727b9d75d87ef3a243a3f61da9c98_activity.pkl new file mode 100644 index 000000000..d13033072 Binary files /dev/null and b/backend/instance/sessions/7dc727b9d75d87ef3a243a3f61da9c98_activity.pkl differ diff --git a/backend/instance/sessions/7e790513e064967a4970d24f7cf4f420_activity.pkl b/backend/instance/sessions/7e790513e064967a4970d24f7cf4f420_activity.pkl new file mode 100644 index 000000000..9053a7bed Binary files /dev/null and b/backend/instance/sessions/7e790513e064967a4970d24f7cf4f420_activity.pkl differ diff --git a/backend/instance/sessions/7e908c84c09cdf3113f447e78d8dcd95_activity.pkl b/backend/instance/sessions/7e908c84c09cdf3113f447e78d8dcd95_activity.pkl new file mode 100644 index 000000000..d7eb54908 Binary files /dev/null and b/backend/instance/sessions/7e908c84c09cdf3113f447e78d8dcd95_activity.pkl differ diff --git a/backend/instance/sessions/7eb8eb32d72edba1fb8c8e39ee452808_activity.pkl b/backend/instance/sessions/7eb8eb32d72edba1fb8c8e39ee452808_activity.pkl new file mode 100644 index 000000000..31cf8701f Binary files /dev/null and b/backend/instance/sessions/7eb8eb32d72edba1fb8c8e39ee452808_activity.pkl differ diff --git a/backend/instance/sessions/7ebed7144c88416aa94a5fe1294624c9_activity.pkl b/backend/instance/sessions/7ebed7144c88416aa94a5fe1294624c9_activity.pkl new file mode 100644 index 000000000..632f6463d Binary files /dev/null and b/backend/instance/sessions/7ebed7144c88416aa94a5fe1294624c9_activity.pkl differ diff --git a/backend/instance/sessions/7eccef35783d863aa3a90de85fd0b6ca_activity.pkl b/backend/instance/sessions/7eccef35783d863aa3a90de85fd0b6ca_activity.pkl new file mode 100644 index 000000000..a9f826cfc Binary files /dev/null and b/backend/instance/sessions/7eccef35783d863aa3a90de85fd0b6ca_activity.pkl differ diff --git a/backend/instance/sessions/811ddc30a059e48601d395dd842a09c1_activity.pkl b/backend/instance/sessions/811ddc30a059e48601d395dd842a09c1_activity.pkl new file mode 100644 index 000000000..b14508d06 Binary files /dev/null and b/backend/instance/sessions/811ddc30a059e48601d395dd842a09c1_activity.pkl differ diff --git a/backend/instance/sessions/81bb8f4653dfc7c72823f1f96acba6b4_activity.pkl b/backend/instance/sessions/81bb8f4653dfc7c72823f1f96acba6b4_activity.pkl new file mode 100644 index 000000000..4dfc4a5fb Binary files /dev/null and b/backend/instance/sessions/81bb8f4653dfc7c72823f1f96acba6b4_activity.pkl differ diff --git a/backend/instance/sessions/81ea3dc90d5f018943e880acbf7dbffa_activity.pkl b/backend/instance/sessions/81ea3dc90d5f018943e880acbf7dbffa_activity.pkl new file mode 100644 index 000000000..4a562f923 Binary files /dev/null and b/backend/instance/sessions/81ea3dc90d5f018943e880acbf7dbffa_activity.pkl differ diff --git a/backend/instance/sessions/81f19e189831e40cbf9ccb14628ce205_activity.pkl b/backend/instance/sessions/81f19e189831e40cbf9ccb14628ce205_activity.pkl new file mode 100644 index 000000000..3b04a69a0 Binary files /dev/null and b/backend/instance/sessions/81f19e189831e40cbf9ccb14628ce205_activity.pkl differ diff --git a/backend/instance/sessions/8283f06ab3d99f974831bf1dc06ea907_activity.pkl b/backend/instance/sessions/8283f06ab3d99f974831bf1dc06ea907_activity.pkl new file mode 100644 index 000000000..828bff92a Binary files /dev/null and b/backend/instance/sessions/8283f06ab3d99f974831bf1dc06ea907_activity.pkl differ diff --git a/backend/instance/sessions/828f381b9174ec72c4ac862e72a8e9c0_activity.pkl b/backend/instance/sessions/828f381b9174ec72c4ac862e72a8e9c0_activity.pkl new file mode 100644 index 000000000..664523d6c Binary files /dev/null and b/backend/instance/sessions/828f381b9174ec72c4ac862e72a8e9c0_activity.pkl differ diff --git a/backend/instance/sessions/82f1e4e07dae0908af4b0d81c8ec34bf_activity.pkl b/backend/instance/sessions/82f1e4e07dae0908af4b0d81c8ec34bf_activity.pkl new file mode 100644 index 000000000..ed72dae32 Binary files /dev/null and b/backend/instance/sessions/82f1e4e07dae0908af4b0d81c8ec34bf_activity.pkl differ diff --git a/backend/instance/sessions/830c1cf5eb88681b98ae35539b368e6f_activity.pkl b/backend/instance/sessions/830c1cf5eb88681b98ae35539b368e6f_activity.pkl new file mode 100644 index 000000000..5f78325c8 Binary files /dev/null and b/backend/instance/sessions/830c1cf5eb88681b98ae35539b368e6f_activity.pkl differ diff --git a/backend/instance/sessions/83372e436bea92f2c685b75ca750125f_activity.pkl b/backend/instance/sessions/83372e436bea92f2c685b75ca750125f_activity.pkl new file mode 100644 index 000000000..315a92605 Binary files /dev/null and b/backend/instance/sessions/83372e436bea92f2c685b75ca750125f_activity.pkl differ diff --git a/backend/instance/sessions/833b6675a1c0c312026e34d7b7073cda_activity.pkl b/backend/instance/sessions/833b6675a1c0c312026e34d7b7073cda_activity.pkl new file mode 100644 index 000000000..4cd841b31 Binary files /dev/null and b/backend/instance/sessions/833b6675a1c0c312026e34d7b7073cda_activity.pkl differ diff --git a/backend/instance/sessions/84b95855e301538aac6f4b452d3ff30f_activity.pkl b/backend/instance/sessions/84b95855e301538aac6f4b452d3ff30f_activity.pkl new file mode 100644 index 000000000..558ded98f Binary files /dev/null and b/backend/instance/sessions/84b95855e301538aac6f4b452d3ff30f_activity.pkl differ diff --git a/backend/instance/sessions/8527d9ac43407e41970d367bb817dc7e_activity.pkl b/backend/instance/sessions/8527d9ac43407e41970d367bb817dc7e_activity.pkl new file mode 100644 index 000000000..73733c017 Binary files /dev/null and b/backend/instance/sessions/8527d9ac43407e41970d367bb817dc7e_activity.pkl differ diff --git a/backend/instance/sessions/855396774be7f3642d1e540980f80f95_activity.pkl b/backend/instance/sessions/855396774be7f3642d1e540980f80f95_activity.pkl new file mode 100644 index 000000000..8c4f6913d Binary files /dev/null and b/backend/instance/sessions/855396774be7f3642d1e540980f80f95_activity.pkl differ diff --git a/backend/instance/sessions/856a39e527355cb9663e45982ffa341b_activity.pkl b/backend/instance/sessions/856a39e527355cb9663e45982ffa341b_activity.pkl new file mode 100644 index 000000000..e82c97c50 Binary files /dev/null and b/backend/instance/sessions/856a39e527355cb9663e45982ffa341b_activity.pkl differ diff --git a/backend/instance/sessions/8691be4772035e9382614e6b173df0c2_activity.pkl b/backend/instance/sessions/8691be4772035e9382614e6b173df0c2_activity.pkl new file mode 100644 index 000000000..44ea1e9ea Binary files /dev/null and b/backend/instance/sessions/8691be4772035e9382614e6b173df0c2_activity.pkl differ diff --git a/backend/instance/sessions/86c52fe7386326d111d37881d1a479f4_activity.pkl b/backend/instance/sessions/86c52fe7386326d111d37881d1a479f4_activity.pkl new file mode 100644 index 000000000..890ba2455 Binary files /dev/null and b/backend/instance/sessions/86c52fe7386326d111d37881d1a479f4_activity.pkl differ diff --git a/backend/instance/sessions/87042c64ea5ed68fecf2499ab5e39448_activity.pkl b/backend/instance/sessions/87042c64ea5ed68fecf2499ab5e39448_activity.pkl new file mode 100644 index 000000000..8e125989b Binary files /dev/null and b/backend/instance/sessions/87042c64ea5ed68fecf2499ab5e39448_activity.pkl differ diff --git a/backend/instance/sessions/87496ae2c1e5204bb0b1884c75283a27_activity.pkl b/backend/instance/sessions/87496ae2c1e5204bb0b1884c75283a27_activity.pkl new file mode 100644 index 000000000..dadb5353c Binary files /dev/null and b/backend/instance/sessions/87496ae2c1e5204bb0b1884c75283a27_activity.pkl differ diff --git a/backend/instance/sessions/87ad63738a7e75bcd241a4dc25cec44d_activity.pkl b/backend/instance/sessions/87ad63738a7e75bcd241a4dc25cec44d_activity.pkl new file mode 100644 index 000000000..30c685e17 Binary files /dev/null and b/backend/instance/sessions/87ad63738a7e75bcd241a4dc25cec44d_activity.pkl differ diff --git a/backend/instance/sessions/87fffc075f2c11389778f7958d6d0b56_activity.pkl b/backend/instance/sessions/87fffc075f2c11389778f7958d6d0b56_activity.pkl new file mode 100644 index 000000000..794fc5037 Binary files /dev/null and b/backend/instance/sessions/87fffc075f2c11389778f7958d6d0b56_activity.pkl differ diff --git a/backend/instance/sessions/8803b5318b0fef3895a4ca2d56faeaad_activity.pkl b/backend/instance/sessions/8803b5318b0fef3895a4ca2d56faeaad_activity.pkl new file mode 100644 index 000000000..b16508496 Binary files /dev/null and b/backend/instance/sessions/8803b5318b0fef3895a4ca2d56faeaad_activity.pkl differ diff --git a/backend/instance/sessions/88969caf03bf3329ecddc9699c454376_activity.pkl b/backend/instance/sessions/88969caf03bf3329ecddc9699c454376_activity.pkl new file mode 100644 index 000000000..c1183d9a2 Binary files /dev/null and b/backend/instance/sessions/88969caf03bf3329ecddc9699c454376_activity.pkl differ diff --git a/backend/instance/sessions/88b6632a3432dd93c861d6f8df62bdee_activity.pkl b/backend/instance/sessions/88b6632a3432dd93c861d6f8df62bdee_activity.pkl new file mode 100644 index 000000000..fa5b0bfaf Binary files /dev/null and b/backend/instance/sessions/88b6632a3432dd93c861d6f8df62bdee_activity.pkl differ diff --git a/backend/instance/sessions/891389876b078eeff8848162143b0c42_activity.pkl b/backend/instance/sessions/891389876b078eeff8848162143b0c42_activity.pkl new file mode 100644 index 000000000..bcbd592d4 Binary files /dev/null and b/backend/instance/sessions/891389876b078eeff8848162143b0c42_activity.pkl differ diff --git a/backend/instance/sessions/8937227dd6768bb2ae4f704647ff5fdb_activity.pkl b/backend/instance/sessions/8937227dd6768bb2ae4f704647ff5fdb_activity.pkl new file mode 100644 index 000000000..87ea15478 Binary files /dev/null and b/backend/instance/sessions/8937227dd6768bb2ae4f704647ff5fdb_activity.pkl differ diff --git a/backend/instance/sessions/893c04ff1137bb8877a81ab702f8047b_activity.pkl b/backend/instance/sessions/893c04ff1137bb8877a81ab702f8047b_activity.pkl new file mode 100644 index 000000000..8317244df Binary files /dev/null and b/backend/instance/sessions/893c04ff1137bb8877a81ab702f8047b_activity.pkl differ diff --git a/backend/instance/sessions/894ded645afe07b5009f4344a423b0a8_activity.pkl b/backend/instance/sessions/894ded645afe07b5009f4344a423b0a8_activity.pkl new file mode 100644 index 000000000..ee7e5604e Binary files /dev/null and b/backend/instance/sessions/894ded645afe07b5009f4344a423b0a8_activity.pkl differ diff --git a/backend/instance/sessions/8a6ca68465c301d0798d0cf77ebc2adb_activity.pkl b/backend/instance/sessions/8a6ca68465c301d0798d0cf77ebc2adb_activity.pkl new file mode 100644 index 000000000..1546375ba Binary files /dev/null and b/backend/instance/sessions/8a6ca68465c301d0798d0cf77ebc2adb_activity.pkl differ diff --git a/backend/instance/sessions/8a7aca6895be8c829cc5c76b56396dfa_activity.pkl b/backend/instance/sessions/8a7aca6895be8c829cc5c76b56396dfa_activity.pkl new file mode 100644 index 000000000..f1b213b4f Binary files /dev/null and b/backend/instance/sessions/8a7aca6895be8c829cc5c76b56396dfa_activity.pkl differ diff --git a/backend/instance/sessions/8b1b3636969153269fc8c70503883fe9_activity.pkl b/backend/instance/sessions/8b1b3636969153269fc8c70503883fe9_activity.pkl new file mode 100644 index 000000000..dde906a9e Binary files /dev/null and b/backend/instance/sessions/8b1b3636969153269fc8c70503883fe9_activity.pkl differ diff --git a/backend/instance/sessions/8b4d26aba9112194d6a82c61bc2887f2_activity.pkl b/backend/instance/sessions/8b4d26aba9112194d6a82c61bc2887f2_activity.pkl new file mode 100644 index 000000000..a2db10846 Binary files /dev/null and b/backend/instance/sessions/8b4d26aba9112194d6a82c61bc2887f2_activity.pkl differ diff --git a/backend/instance/sessions/8d03cf7e1a4389d9527bcda7a1f756fd_activity.pkl b/backend/instance/sessions/8d03cf7e1a4389d9527bcda7a1f756fd_activity.pkl new file mode 100644 index 000000000..b2365cec9 Binary files /dev/null and b/backend/instance/sessions/8d03cf7e1a4389d9527bcda7a1f756fd_activity.pkl differ diff --git a/backend/instance/sessions/8d6783567fea6ede588569b825e18b78_activity.pkl b/backend/instance/sessions/8d6783567fea6ede588569b825e18b78_activity.pkl new file mode 100644 index 000000000..94478bb51 Binary files /dev/null and b/backend/instance/sessions/8d6783567fea6ede588569b825e18b78_activity.pkl differ diff --git a/backend/instance/sessions/8d9bafe9afc055b364b686f12d652c5f_activity.pkl b/backend/instance/sessions/8d9bafe9afc055b364b686f12d652c5f_activity.pkl new file mode 100644 index 000000000..b5df71af6 Binary files /dev/null and b/backend/instance/sessions/8d9bafe9afc055b364b686f12d652c5f_activity.pkl differ diff --git a/backend/instance/sessions/8da85c483a7f5cd5b6d1adabf3366285_activity.pkl b/backend/instance/sessions/8da85c483a7f5cd5b6d1adabf3366285_activity.pkl new file mode 100644 index 000000000..dae1bc4a1 Binary files /dev/null and b/backend/instance/sessions/8da85c483a7f5cd5b6d1adabf3366285_activity.pkl differ diff --git a/backend/instance/sessions/8db3c4f0d64586459477b95ca9cc9b73_activity.pkl b/backend/instance/sessions/8db3c4f0d64586459477b95ca9cc9b73_activity.pkl new file mode 100644 index 000000000..d150fdb38 Binary files /dev/null and b/backend/instance/sessions/8db3c4f0d64586459477b95ca9cc9b73_activity.pkl differ diff --git a/backend/instance/sessions/8dcbd3da7444c17ec44bdd96129d185b_activity.pkl b/backend/instance/sessions/8dcbd3da7444c17ec44bdd96129d185b_activity.pkl new file mode 100644 index 000000000..2f1cdfaaf Binary files /dev/null and b/backend/instance/sessions/8dcbd3da7444c17ec44bdd96129d185b_activity.pkl differ diff --git a/backend/instance/sessions/8ecc1d59d6eaf5d4f861a061365f0547_activity.pkl b/backend/instance/sessions/8ecc1d59d6eaf5d4f861a061365f0547_activity.pkl new file mode 100644 index 000000000..23ed759f6 Binary files /dev/null and b/backend/instance/sessions/8ecc1d59d6eaf5d4f861a061365f0547_activity.pkl differ diff --git a/backend/instance/sessions/8f285e52dd8f47f79a82cd53bb23cf3d_activity.pkl b/backend/instance/sessions/8f285e52dd8f47f79a82cd53bb23cf3d_activity.pkl new file mode 100644 index 000000000..724abd106 Binary files /dev/null and b/backend/instance/sessions/8f285e52dd8f47f79a82cd53bb23cf3d_activity.pkl differ diff --git a/backend/instance/sessions/8f71609f1f6722bd4e75b4b6a940cf43_activity.pkl b/backend/instance/sessions/8f71609f1f6722bd4e75b4b6a940cf43_activity.pkl new file mode 100644 index 000000000..1739fab4a Binary files /dev/null and b/backend/instance/sessions/8f71609f1f6722bd4e75b4b6a940cf43_activity.pkl differ diff --git a/backend/instance/sessions/8fd6d0e9347f5a3ff2b3955d9d5c97db_activity.pkl b/backend/instance/sessions/8fd6d0e9347f5a3ff2b3955d9d5c97db_activity.pkl new file mode 100644 index 000000000..87d74e5c6 Binary files /dev/null and b/backend/instance/sessions/8fd6d0e9347f5a3ff2b3955d9d5c97db_activity.pkl differ diff --git a/backend/instance/sessions/911e5eadd199a2d50428be84bd0b8908_activity.pkl b/backend/instance/sessions/911e5eadd199a2d50428be84bd0b8908_activity.pkl new file mode 100644 index 000000000..f109b4d1e Binary files /dev/null and b/backend/instance/sessions/911e5eadd199a2d50428be84bd0b8908_activity.pkl differ diff --git a/backend/instance/sessions/91769d3cbed8139d195383d2b7c32601_activity.pkl b/backend/instance/sessions/91769d3cbed8139d195383d2b7c32601_activity.pkl new file mode 100644 index 000000000..17dd97720 Binary files /dev/null and b/backend/instance/sessions/91769d3cbed8139d195383d2b7c32601_activity.pkl differ diff --git a/backend/instance/sessions/925fe6f1014e7a0df7261dc12c2d142a_activity.pkl b/backend/instance/sessions/925fe6f1014e7a0df7261dc12c2d142a_activity.pkl new file mode 100644 index 000000000..38a257b4c Binary files /dev/null and b/backend/instance/sessions/925fe6f1014e7a0df7261dc12c2d142a_activity.pkl differ diff --git a/backend/instance/sessions/931b26ebb7d148530190f568daee2c01_activity.pkl b/backend/instance/sessions/931b26ebb7d148530190f568daee2c01_activity.pkl new file mode 100644 index 000000000..97f07551b Binary files /dev/null and b/backend/instance/sessions/931b26ebb7d148530190f568daee2c01_activity.pkl differ diff --git a/backend/instance/sessions/9407bcf5d266c9c902e5a5a66544f93e_activity.pkl b/backend/instance/sessions/9407bcf5d266c9c902e5a5a66544f93e_activity.pkl new file mode 100644 index 000000000..bc58483f3 Binary files /dev/null and b/backend/instance/sessions/9407bcf5d266c9c902e5a5a66544f93e_activity.pkl differ diff --git a/backend/instance/sessions/9425b17bdd6c42778a11385cf344b79e_activity.pkl b/backend/instance/sessions/9425b17bdd6c42778a11385cf344b79e_activity.pkl new file mode 100644 index 000000000..2789ce72d Binary files /dev/null and b/backend/instance/sessions/9425b17bdd6c42778a11385cf344b79e_activity.pkl differ diff --git a/backend/instance/sessions/94dab127d1620129ca289e77437d7d1d_activity.pkl b/backend/instance/sessions/94dab127d1620129ca289e77437d7d1d_activity.pkl new file mode 100644 index 000000000..01d72e14f Binary files /dev/null and b/backend/instance/sessions/94dab127d1620129ca289e77437d7d1d_activity.pkl differ diff --git a/backend/instance/sessions/94f9052004a9459b9a410a9860aa79c3_activity.pkl b/backend/instance/sessions/94f9052004a9459b9a410a9860aa79c3_activity.pkl new file mode 100644 index 000000000..050bb1ec1 Binary files /dev/null and b/backend/instance/sessions/94f9052004a9459b9a410a9860aa79c3_activity.pkl differ diff --git a/backend/instance/sessions/951b88d6cdf295dbf7b85e374cc6a18d_activity.pkl b/backend/instance/sessions/951b88d6cdf295dbf7b85e374cc6a18d_activity.pkl new file mode 100644 index 000000000..ee7fb6c3d Binary files /dev/null and b/backend/instance/sessions/951b88d6cdf295dbf7b85e374cc6a18d_activity.pkl differ diff --git a/backend/instance/sessions/958e721d518e770ffbcd938a77405577_activity.pkl b/backend/instance/sessions/958e721d518e770ffbcd938a77405577_activity.pkl new file mode 100644 index 000000000..8156a11a4 Binary files /dev/null and b/backend/instance/sessions/958e721d518e770ffbcd938a77405577_activity.pkl differ diff --git a/backend/instance/sessions/95d3a1147d27d35f0ccaf4da7fcb240e_activity.pkl b/backend/instance/sessions/95d3a1147d27d35f0ccaf4da7fcb240e_activity.pkl new file mode 100644 index 000000000..d03b34a36 Binary files /dev/null and b/backend/instance/sessions/95d3a1147d27d35f0ccaf4da7fcb240e_activity.pkl differ diff --git a/backend/instance/sessions/9600aa66cb2bb8f54b3f72c98c6ce0a5_activity.pkl b/backend/instance/sessions/9600aa66cb2bb8f54b3f72c98c6ce0a5_activity.pkl new file mode 100644 index 000000000..b79cb1cdf Binary files /dev/null and b/backend/instance/sessions/9600aa66cb2bb8f54b3f72c98c6ce0a5_activity.pkl differ diff --git a/backend/instance/sessions/962e358894eae4050ee04eb6236d7be4_activity.pkl b/backend/instance/sessions/962e358894eae4050ee04eb6236d7be4_activity.pkl new file mode 100644 index 000000000..44805006b Binary files /dev/null and b/backend/instance/sessions/962e358894eae4050ee04eb6236d7be4_activity.pkl differ diff --git a/backend/instance/sessions/96408365c3a73e32766cdadee6e83bb2_activity.pkl b/backend/instance/sessions/96408365c3a73e32766cdadee6e83bb2_activity.pkl new file mode 100644 index 000000000..7def45f82 Binary files /dev/null and b/backend/instance/sessions/96408365c3a73e32766cdadee6e83bb2_activity.pkl differ diff --git a/backend/instance/sessions/9675ddeb9e22a1b1195fe302ca81381e_activity.pkl b/backend/instance/sessions/9675ddeb9e22a1b1195fe302ca81381e_activity.pkl new file mode 100644 index 000000000..335ca0329 Binary files /dev/null and b/backend/instance/sessions/9675ddeb9e22a1b1195fe302ca81381e_activity.pkl differ diff --git a/backend/instance/sessions/96988474db44cccd2b5b179101921d53_activity.pkl b/backend/instance/sessions/96988474db44cccd2b5b179101921d53_activity.pkl new file mode 100644 index 000000000..7a53d0501 Binary files /dev/null and b/backend/instance/sessions/96988474db44cccd2b5b179101921d53_activity.pkl differ diff --git a/backend/instance/sessions/970cf18eb89afd97cc931575cc5ede59_activity.pkl b/backend/instance/sessions/970cf18eb89afd97cc931575cc5ede59_activity.pkl new file mode 100644 index 000000000..c177bbd95 Binary files /dev/null and b/backend/instance/sessions/970cf18eb89afd97cc931575cc5ede59_activity.pkl differ diff --git a/backend/instance/sessions/976063512326b3204780746e895a8c3b_activity.pkl b/backend/instance/sessions/976063512326b3204780746e895a8c3b_activity.pkl new file mode 100644 index 000000000..1d7fec902 Binary files /dev/null and b/backend/instance/sessions/976063512326b3204780746e895a8c3b_activity.pkl differ diff --git a/backend/instance/sessions/98172a38db719b0ea6da665c02667b99_activity.pkl b/backend/instance/sessions/98172a38db719b0ea6da665c02667b99_activity.pkl new file mode 100644 index 000000000..2b4a292e9 Binary files /dev/null and b/backend/instance/sessions/98172a38db719b0ea6da665c02667b99_activity.pkl differ diff --git a/backend/instance/sessions/983666b78b69c6a943db8fa1b36c9691_activity.pkl b/backend/instance/sessions/983666b78b69c6a943db8fa1b36c9691_activity.pkl new file mode 100644 index 000000000..c14fd9b20 Binary files /dev/null and b/backend/instance/sessions/983666b78b69c6a943db8fa1b36c9691_activity.pkl differ diff --git a/backend/instance/sessions/9871b99a3cae290503201702ffd7209a_activity.pkl b/backend/instance/sessions/9871b99a3cae290503201702ffd7209a_activity.pkl new file mode 100644 index 000000000..dc88bd32c Binary files /dev/null and b/backend/instance/sessions/9871b99a3cae290503201702ffd7209a_activity.pkl differ diff --git a/backend/instance/sessions/98e1c5488b89774a25ae1d70a8b7ea80_activity.pkl b/backend/instance/sessions/98e1c5488b89774a25ae1d70a8b7ea80_activity.pkl new file mode 100644 index 000000000..9d723a8af Binary files /dev/null and b/backend/instance/sessions/98e1c5488b89774a25ae1d70a8b7ea80_activity.pkl differ diff --git a/backend/instance/sessions/9a032730b23849bdbf26ffc3911a3ac9_activity.pkl b/backend/instance/sessions/9a032730b23849bdbf26ffc3911a3ac9_activity.pkl new file mode 100644 index 000000000..df06c314b Binary files /dev/null and b/backend/instance/sessions/9a032730b23849bdbf26ffc3911a3ac9_activity.pkl differ diff --git a/backend/instance/sessions/9a586ead262d5b68398426b78d297556_activity.pkl b/backend/instance/sessions/9a586ead262d5b68398426b78d297556_activity.pkl new file mode 100644 index 000000000..afaf064ff Binary files /dev/null and b/backend/instance/sessions/9a586ead262d5b68398426b78d297556_activity.pkl differ diff --git a/backend/instance/sessions/9ab7ed42773c8073f327b6dd6ed00202_activity.pkl b/backend/instance/sessions/9ab7ed42773c8073f327b6dd6ed00202_activity.pkl new file mode 100644 index 000000000..c2789e645 Binary files /dev/null and b/backend/instance/sessions/9ab7ed42773c8073f327b6dd6ed00202_activity.pkl differ diff --git a/backend/instance/sessions/9b83850759c120bdcd5245e63c7e5a63_activity.pkl b/backend/instance/sessions/9b83850759c120bdcd5245e63c7e5a63_activity.pkl new file mode 100644 index 000000000..10adc7e4b Binary files /dev/null and b/backend/instance/sessions/9b83850759c120bdcd5245e63c7e5a63_activity.pkl differ diff --git a/backend/instance/sessions/9cb2fc8b769f302ec649a9ec6bb1b39e_activity.pkl b/backend/instance/sessions/9cb2fc8b769f302ec649a9ec6bb1b39e_activity.pkl new file mode 100644 index 000000000..9338aa582 Binary files /dev/null and b/backend/instance/sessions/9cb2fc8b769f302ec649a9ec6bb1b39e_activity.pkl differ diff --git a/backend/instance/sessions/9ced41f21ebabdfe48fdbf2a78aecff4_activity.pkl b/backend/instance/sessions/9ced41f21ebabdfe48fdbf2a78aecff4_activity.pkl new file mode 100644 index 000000000..f6fcff6d1 Binary files /dev/null and b/backend/instance/sessions/9ced41f21ebabdfe48fdbf2a78aecff4_activity.pkl differ diff --git a/backend/instance/sessions/9cfb54451fd3f6eb804b556a8e20052e_activity.pkl b/backend/instance/sessions/9cfb54451fd3f6eb804b556a8e20052e_activity.pkl new file mode 100644 index 000000000..a89e5d168 Binary files /dev/null and b/backend/instance/sessions/9cfb54451fd3f6eb804b556a8e20052e_activity.pkl differ diff --git a/backend/instance/sessions/9d4011a6f40c958b11261558b000c124_activity.pkl b/backend/instance/sessions/9d4011a6f40c958b11261558b000c124_activity.pkl new file mode 100644 index 000000000..6c84498a4 Binary files /dev/null and b/backend/instance/sessions/9d4011a6f40c958b11261558b000c124_activity.pkl differ diff --git a/backend/instance/sessions/9d4a6002f967a32e95ce29d1c6e70c0a_activity.pkl b/backend/instance/sessions/9d4a6002f967a32e95ce29d1c6e70c0a_activity.pkl new file mode 100644 index 000000000..bbea46f28 Binary files /dev/null and b/backend/instance/sessions/9d4a6002f967a32e95ce29d1c6e70c0a_activity.pkl differ diff --git a/backend/instance/sessions/9d53af76f1f281bf209d370e29927766_activity.pkl b/backend/instance/sessions/9d53af76f1f281bf209d370e29927766_activity.pkl new file mode 100644 index 000000000..f6b1edf2c Binary files /dev/null and b/backend/instance/sessions/9d53af76f1f281bf209d370e29927766_activity.pkl differ diff --git a/backend/instance/sessions/9e4fbd47a9d61878420c6f6579ba7023_activity.pkl b/backend/instance/sessions/9e4fbd47a9d61878420c6f6579ba7023_activity.pkl new file mode 100644 index 000000000..902566456 Binary files /dev/null and b/backend/instance/sessions/9e4fbd47a9d61878420c6f6579ba7023_activity.pkl differ diff --git a/backend/instance/sessions/9f369124e4bb6fe354627929f31d4b75_activity.pkl b/backend/instance/sessions/9f369124e4bb6fe354627929f31d4b75_activity.pkl new file mode 100644 index 000000000..de9da058f Binary files /dev/null and b/backend/instance/sessions/9f369124e4bb6fe354627929f31d4b75_activity.pkl differ diff --git a/backend/instance/sessions/9f5c9c2274edad50bd86753e4b1ca676_activity.pkl b/backend/instance/sessions/9f5c9c2274edad50bd86753e4b1ca676_activity.pkl new file mode 100644 index 000000000..984274631 Binary files /dev/null and b/backend/instance/sessions/9f5c9c2274edad50bd86753e4b1ca676_activity.pkl differ diff --git a/backend/instance/sessions/9fa3ff5ce7d10408c024bf13822d0132_activity.pkl b/backend/instance/sessions/9fa3ff5ce7d10408c024bf13822d0132_activity.pkl new file mode 100644 index 000000000..7de3c66db Binary files /dev/null and b/backend/instance/sessions/9fa3ff5ce7d10408c024bf13822d0132_activity.pkl differ diff --git a/backend/instance/sessions/9fdc61ebc3fdbf51ec3bd88a61984385_activity.pkl b/backend/instance/sessions/9fdc61ebc3fdbf51ec3bd88a61984385_activity.pkl new file mode 100644 index 000000000..94d23778f Binary files /dev/null and b/backend/instance/sessions/9fdc61ebc3fdbf51ec3bd88a61984385_activity.pkl differ diff --git a/backend/instance/sessions/a11f6b406a64628ecda5c9ec8d11c554_activity.pkl b/backend/instance/sessions/a11f6b406a64628ecda5c9ec8d11c554_activity.pkl new file mode 100644 index 000000000..4d8b9360d Binary files /dev/null and b/backend/instance/sessions/a11f6b406a64628ecda5c9ec8d11c554_activity.pkl differ diff --git a/backend/instance/sessions/a12286c1a17cb0b74f403f0d87fc0bf3_activity.pkl b/backend/instance/sessions/a12286c1a17cb0b74f403f0d87fc0bf3_activity.pkl new file mode 100644 index 000000000..333727a32 Binary files /dev/null and b/backend/instance/sessions/a12286c1a17cb0b74f403f0d87fc0bf3_activity.pkl differ diff --git a/backend/instance/sessions/a14dabd99012127fd11707ca8761b90c_activity.pkl b/backend/instance/sessions/a14dabd99012127fd11707ca8761b90c_activity.pkl new file mode 100644 index 000000000..277b05810 Binary files /dev/null and b/backend/instance/sessions/a14dabd99012127fd11707ca8761b90c_activity.pkl differ diff --git a/backend/instance/sessions/a16a2279e66f8ba014e0ff2bde53f70f_activity.pkl b/backend/instance/sessions/a16a2279e66f8ba014e0ff2bde53f70f_activity.pkl new file mode 100644 index 000000000..08fdae4e2 Binary files /dev/null and b/backend/instance/sessions/a16a2279e66f8ba014e0ff2bde53f70f_activity.pkl differ diff --git a/backend/instance/sessions/a206aced346c4bb5cab6920f6f9c425e_activity.pkl b/backend/instance/sessions/a206aced346c4bb5cab6920f6f9c425e_activity.pkl new file mode 100644 index 000000000..5587a3a07 Binary files /dev/null and b/backend/instance/sessions/a206aced346c4bb5cab6920f6f9c425e_activity.pkl differ diff --git a/backend/instance/sessions/a2514a4836f8e7021d67a8e3c02276b9_activity.pkl b/backend/instance/sessions/a2514a4836f8e7021d67a8e3c02276b9_activity.pkl new file mode 100644 index 000000000..755f44f61 Binary files /dev/null and b/backend/instance/sessions/a2514a4836f8e7021d67a8e3c02276b9_activity.pkl differ diff --git a/backend/instance/sessions/a293711e1c8017e68725690a96c5e4a8_activity.pkl b/backend/instance/sessions/a293711e1c8017e68725690a96c5e4a8_activity.pkl new file mode 100644 index 000000000..a7d5677ad Binary files /dev/null and b/backend/instance/sessions/a293711e1c8017e68725690a96c5e4a8_activity.pkl differ diff --git a/backend/instance/sessions/a2a78e23d75fcff9facc1ac5e285bd65_activity.pkl b/backend/instance/sessions/a2a78e23d75fcff9facc1ac5e285bd65_activity.pkl new file mode 100644 index 000000000..f1680919c Binary files /dev/null and b/backend/instance/sessions/a2a78e23d75fcff9facc1ac5e285bd65_activity.pkl differ diff --git a/backend/instance/sessions/a2e51d38b6d30dbc8036f227259f9359_activity.pkl b/backend/instance/sessions/a2e51d38b6d30dbc8036f227259f9359_activity.pkl new file mode 100644 index 000000000..994321c8a Binary files /dev/null and b/backend/instance/sessions/a2e51d38b6d30dbc8036f227259f9359_activity.pkl differ diff --git a/backend/instance/sessions/a33aa95a062fa60634c2a3da72c7fb2a_activity.pkl b/backend/instance/sessions/a33aa95a062fa60634c2a3da72c7fb2a_activity.pkl new file mode 100644 index 000000000..3d20a0f6e Binary files /dev/null and b/backend/instance/sessions/a33aa95a062fa60634c2a3da72c7fb2a_activity.pkl differ diff --git a/backend/instance/sessions/a33d3d1a0dd69c02c39cb1868458ced1_activity.pkl b/backend/instance/sessions/a33d3d1a0dd69c02c39cb1868458ced1_activity.pkl new file mode 100644 index 000000000..5f58d8c6d Binary files /dev/null and b/backend/instance/sessions/a33d3d1a0dd69c02c39cb1868458ced1_activity.pkl differ diff --git a/backend/instance/sessions/a342a25f7a6b6852bd82984bacfbb977_activity.pkl b/backend/instance/sessions/a342a25f7a6b6852bd82984bacfbb977_activity.pkl new file mode 100644 index 000000000..e605d6f1e Binary files /dev/null and b/backend/instance/sessions/a342a25f7a6b6852bd82984bacfbb977_activity.pkl differ diff --git a/backend/instance/sessions/a36999ac413f30229b561e8ee1bf9dce_activity.pkl b/backend/instance/sessions/a36999ac413f30229b561e8ee1bf9dce_activity.pkl new file mode 100644 index 000000000..51c58d926 Binary files /dev/null and b/backend/instance/sessions/a36999ac413f30229b561e8ee1bf9dce_activity.pkl differ diff --git a/backend/instance/sessions/a3e49a09d50d8f3124ca1a45a7744045_activity.pkl b/backend/instance/sessions/a3e49a09d50d8f3124ca1a45a7744045_activity.pkl new file mode 100644 index 000000000..63409584a Binary files /dev/null and b/backend/instance/sessions/a3e49a09d50d8f3124ca1a45a7744045_activity.pkl differ diff --git a/backend/instance/sessions/a3efda489cdb15b3f80e8e1608ee801b_activity.pkl b/backend/instance/sessions/a3efda489cdb15b3f80e8e1608ee801b_activity.pkl new file mode 100644 index 000000000..251e97cc2 Binary files /dev/null and b/backend/instance/sessions/a3efda489cdb15b3f80e8e1608ee801b_activity.pkl differ diff --git a/backend/instance/sessions/a3f5ed3a26140254a4aa0ad95ea3029f_activity.pkl b/backend/instance/sessions/a3f5ed3a26140254a4aa0ad95ea3029f_activity.pkl new file mode 100644 index 000000000..f43ad8a81 Binary files /dev/null and b/backend/instance/sessions/a3f5ed3a26140254a4aa0ad95ea3029f_activity.pkl differ diff --git a/backend/instance/sessions/a409cee9b882d64b7e94caa58ae79395_activity.pkl b/backend/instance/sessions/a409cee9b882d64b7e94caa58ae79395_activity.pkl new file mode 100644 index 000000000..8f9bdff48 Binary files /dev/null and b/backend/instance/sessions/a409cee9b882d64b7e94caa58ae79395_activity.pkl differ diff --git a/backend/instance/sessions/a41c9a950667a98f13dcbf36105c5555_activity.pkl b/backend/instance/sessions/a41c9a950667a98f13dcbf36105c5555_activity.pkl new file mode 100644 index 000000000..e9b6b9c2b Binary files /dev/null and b/backend/instance/sessions/a41c9a950667a98f13dcbf36105c5555_activity.pkl differ diff --git a/backend/instance/sessions/a48b1bc68666689d14a72453808385af_activity.pkl b/backend/instance/sessions/a48b1bc68666689d14a72453808385af_activity.pkl new file mode 100644 index 000000000..77d1d8afd Binary files /dev/null and b/backend/instance/sessions/a48b1bc68666689d14a72453808385af_activity.pkl differ diff --git a/backend/instance/sessions/a4e6ef52a260673cd4fb765c8a03720c_activity.pkl b/backend/instance/sessions/a4e6ef52a260673cd4fb765c8a03720c_activity.pkl new file mode 100644 index 000000000..f6e52bc18 Binary files /dev/null and b/backend/instance/sessions/a4e6ef52a260673cd4fb765c8a03720c_activity.pkl differ diff --git a/backend/instance/sessions/a5de6fb39c642a13b7517e4b8818c2e5_activity.pkl b/backend/instance/sessions/a5de6fb39c642a13b7517e4b8818c2e5_activity.pkl new file mode 100644 index 000000000..ab23eb333 Binary files /dev/null and b/backend/instance/sessions/a5de6fb39c642a13b7517e4b8818c2e5_activity.pkl differ diff --git a/backend/instance/sessions/a5faa1990a56c8921ecfb0fa38d7cec7_activity.pkl b/backend/instance/sessions/a5faa1990a56c8921ecfb0fa38d7cec7_activity.pkl new file mode 100644 index 000000000..b16da97ee Binary files /dev/null and b/backend/instance/sessions/a5faa1990a56c8921ecfb0fa38d7cec7_activity.pkl differ diff --git a/backend/instance/sessions/a66702276a042641ac28d71563ea853d_activity.pkl b/backend/instance/sessions/a66702276a042641ac28d71563ea853d_activity.pkl new file mode 100644 index 000000000..a4033ba83 Binary files /dev/null and b/backend/instance/sessions/a66702276a042641ac28d71563ea853d_activity.pkl differ diff --git a/backend/instance/sessions/a6b7d23ce6e6589854d4f6512195c655_activity.pkl b/backend/instance/sessions/a6b7d23ce6e6589854d4f6512195c655_activity.pkl new file mode 100644 index 000000000..8555820fd Binary files /dev/null and b/backend/instance/sessions/a6b7d23ce6e6589854d4f6512195c655_activity.pkl differ diff --git a/backend/instance/sessions/a6d71fd1aceaa7d085b1215b78b877fa_activity.pkl b/backend/instance/sessions/a6d71fd1aceaa7d085b1215b78b877fa_activity.pkl new file mode 100644 index 000000000..e5d197e1e Binary files /dev/null and b/backend/instance/sessions/a6d71fd1aceaa7d085b1215b78b877fa_activity.pkl differ diff --git a/backend/instance/sessions/a750928353eb1dd64d0b41e2eea09c11_activity.pkl b/backend/instance/sessions/a750928353eb1dd64d0b41e2eea09c11_activity.pkl new file mode 100644 index 000000000..56539efb7 Binary files /dev/null and b/backend/instance/sessions/a750928353eb1dd64d0b41e2eea09c11_activity.pkl differ diff --git a/backend/instance/sessions/a7661d4f970ab10d56cb46cc9974bdb4_activity.pkl b/backend/instance/sessions/a7661d4f970ab10d56cb46cc9974bdb4_activity.pkl new file mode 100644 index 000000000..b347f12d0 Binary files /dev/null and b/backend/instance/sessions/a7661d4f970ab10d56cb46cc9974bdb4_activity.pkl differ diff --git a/backend/instance/sessions/a7670c59c18813c9d8f008d660b94da1_activity.pkl b/backend/instance/sessions/a7670c59c18813c9d8f008d660b94da1_activity.pkl new file mode 100644 index 000000000..0743333f9 Binary files /dev/null and b/backend/instance/sessions/a7670c59c18813c9d8f008d660b94da1_activity.pkl differ diff --git a/backend/instance/sessions/a7e743394eb9b255e845558230dc0b12_activity.pkl b/backend/instance/sessions/a7e743394eb9b255e845558230dc0b12_activity.pkl new file mode 100644 index 000000000..153a38526 Binary files /dev/null and b/backend/instance/sessions/a7e743394eb9b255e845558230dc0b12_activity.pkl differ diff --git a/backend/instance/sessions/a85775f68377446fb67758b123ad2e79_activity.pkl b/backend/instance/sessions/a85775f68377446fb67758b123ad2e79_activity.pkl new file mode 100644 index 000000000..b2242924d Binary files /dev/null and b/backend/instance/sessions/a85775f68377446fb67758b123ad2e79_activity.pkl differ diff --git a/backend/instance/sessions/a85a365a5f633ce7ba19af6329522ed9_activity.pkl b/backend/instance/sessions/a85a365a5f633ce7ba19af6329522ed9_activity.pkl new file mode 100644 index 000000000..39d617ef2 Binary files /dev/null and b/backend/instance/sessions/a85a365a5f633ce7ba19af6329522ed9_activity.pkl differ diff --git a/backend/instance/sessions/a86742bdf2f43d3a86fe26977456353d_activity.pkl b/backend/instance/sessions/a86742bdf2f43d3a86fe26977456353d_activity.pkl new file mode 100644 index 000000000..aba8475c7 Binary files /dev/null and b/backend/instance/sessions/a86742bdf2f43d3a86fe26977456353d_activity.pkl differ diff --git a/backend/instance/sessions/a917e60b344d71e039e839956bc93637_activity.pkl b/backend/instance/sessions/a917e60b344d71e039e839956bc93637_activity.pkl new file mode 100644 index 000000000..f1bc63273 Binary files /dev/null and b/backend/instance/sessions/a917e60b344d71e039e839956bc93637_activity.pkl differ diff --git a/backend/instance/sessions/a9253414b99c746995a7ac1d3706e055_activity.pkl b/backend/instance/sessions/a9253414b99c746995a7ac1d3706e055_activity.pkl new file mode 100644 index 000000000..aac492332 Binary files /dev/null and b/backend/instance/sessions/a9253414b99c746995a7ac1d3706e055_activity.pkl differ diff --git a/backend/instance/sessions/a97853426798213b72b478177e8d6e86_activity.pkl b/backend/instance/sessions/a97853426798213b72b478177e8d6e86_activity.pkl new file mode 100644 index 000000000..2d0436fa1 Binary files /dev/null and b/backend/instance/sessions/a97853426798213b72b478177e8d6e86_activity.pkl differ diff --git a/backend/instance/sessions/a9a5b0c4ca5540028baceb6e94f2031b_activity.pkl b/backend/instance/sessions/a9a5b0c4ca5540028baceb6e94f2031b_activity.pkl new file mode 100644 index 000000000..ecd83a755 Binary files /dev/null and b/backend/instance/sessions/a9a5b0c4ca5540028baceb6e94f2031b_activity.pkl differ diff --git a/backend/instance/sessions/aaa47302ed780cbc572f25e0a7a20fe3_activity.pkl b/backend/instance/sessions/aaa47302ed780cbc572f25e0a7a20fe3_activity.pkl new file mode 100644 index 000000000..d7976a99c Binary files /dev/null and b/backend/instance/sessions/aaa47302ed780cbc572f25e0a7a20fe3_activity.pkl differ diff --git a/backend/instance/sessions/aaa82c0fa45a5911d10b72bf05e41c27_activity.pkl b/backend/instance/sessions/aaa82c0fa45a5911d10b72bf05e41c27_activity.pkl new file mode 100644 index 000000000..c68d068a5 Binary files /dev/null and b/backend/instance/sessions/aaa82c0fa45a5911d10b72bf05e41c27_activity.pkl differ diff --git a/backend/instance/sessions/aab715a0e876d26d227c2aecaf3d89ce_activity.pkl b/backend/instance/sessions/aab715a0e876d26d227c2aecaf3d89ce_activity.pkl new file mode 100644 index 000000000..25e5a7b1b Binary files /dev/null and b/backend/instance/sessions/aab715a0e876d26d227c2aecaf3d89ce_activity.pkl differ diff --git a/backend/instance/sessions/ab3a441417e685a512bfb6e1f91af659_activity.pkl b/backend/instance/sessions/ab3a441417e685a512bfb6e1f91af659_activity.pkl new file mode 100644 index 000000000..3fae71e72 Binary files /dev/null and b/backend/instance/sessions/ab3a441417e685a512bfb6e1f91af659_activity.pkl differ diff --git a/backend/instance/sessions/ab6cc263c5620e5a628f996a8949cbb4_activity.pkl b/backend/instance/sessions/ab6cc263c5620e5a628f996a8949cbb4_activity.pkl new file mode 100644 index 000000000..fd395efc4 Binary files /dev/null and b/backend/instance/sessions/ab6cc263c5620e5a628f996a8949cbb4_activity.pkl differ diff --git a/backend/instance/sessions/abe1be76534a8f86e8d3543a0b5f3e51_activity.pkl b/backend/instance/sessions/abe1be76534a8f86e8d3543a0b5f3e51_activity.pkl new file mode 100644 index 000000000..dca0ab420 Binary files /dev/null and b/backend/instance/sessions/abe1be76534a8f86e8d3543a0b5f3e51_activity.pkl differ diff --git a/backend/instance/sessions/ac1492eba7dff4722fffd9fd5930d306_activity.pkl b/backend/instance/sessions/ac1492eba7dff4722fffd9fd5930d306_activity.pkl new file mode 100644 index 000000000..baaecbdb8 Binary files /dev/null and b/backend/instance/sessions/ac1492eba7dff4722fffd9fd5930d306_activity.pkl differ diff --git a/backend/instance/sessions/acb029e81bd4bead6f6e013d09fcfefe_activity.pkl b/backend/instance/sessions/acb029e81bd4bead6f6e013d09fcfefe_activity.pkl new file mode 100644 index 000000000..d14d04fd6 Binary files /dev/null and b/backend/instance/sessions/acb029e81bd4bead6f6e013d09fcfefe_activity.pkl differ diff --git a/backend/instance/sessions/ad83f26f804723e82418bc03925ad974_activity.pkl b/backend/instance/sessions/ad83f26f804723e82418bc03925ad974_activity.pkl new file mode 100644 index 000000000..9d72fe692 Binary files /dev/null and b/backend/instance/sessions/ad83f26f804723e82418bc03925ad974_activity.pkl differ diff --git a/backend/instance/sessions/ad8badb31b899f1b585ec260be435ee9_activity.pkl b/backend/instance/sessions/ad8badb31b899f1b585ec260be435ee9_activity.pkl new file mode 100644 index 000000000..ab28be0fe Binary files /dev/null and b/backend/instance/sessions/ad8badb31b899f1b585ec260be435ee9_activity.pkl differ diff --git a/backend/instance/sessions/ad998c92ebc855ad606a04187f8030d1_activity.pkl b/backend/instance/sessions/ad998c92ebc855ad606a04187f8030d1_activity.pkl new file mode 100644 index 000000000..ab15f72cb Binary files /dev/null and b/backend/instance/sessions/ad998c92ebc855ad606a04187f8030d1_activity.pkl differ diff --git a/backend/instance/sessions/ae20f8d37949762e2b2760a61a0e34d0_activity.pkl b/backend/instance/sessions/ae20f8d37949762e2b2760a61a0e34d0_activity.pkl new file mode 100644 index 000000000..c31362e8f Binary files /dev/null and b/backend/instance/sessions/ae20f8d37949762e2b2760a61a0e34d0_activity.pkl differ diff --git a/backend/instance/sessions/ae338d5022d6523f5113ce4960816ce8_activity.pkl b/backend/instance/sessions/ae338d5022d6523f5113ce4960816ce8_activity.pkl new file mode 100644 index 000000000..42b4a671b Binary files /dev/null and b/backend/instance/sessions/ae338d5022d6523f5113ce4960816ce8_activity.pkl differ diff --git a/backend/instance/sessions/ae778910e4ec9d0ef0d6f2bd405be750_activity.pkl b/backend/instance/sessions/ae778910e4ec9d0ef0d6f2bd405be750_activity.pkl new file mode 100644 index 000000000..24b234f4c Binary files /dev/null and b/backend/instance/sessions/ae778910e4ec9d0ef0d6f2bd405be750_activity.pkl differ diff --git a/backend/instance/sessions/aea0e364e50a01bed5c5b906226a3e70_activity.pkl b/backend/instance/sessions/aea0e364e50a01bed5c5b906226a3e70_activity.pkl new file mode 100644 index 000000000..bc1d6be04 Binary files /dev/null and b/backend/instance/sessions/aea0e364e50a01bed5c5b906226a3e70_activity.pkl differ diff --git a/backend/instance/sessions/aec106b86fce9c25348455f8baa6f444_activity.pkl b/backend/instance/sessions/aec106b86fce9c25348455f8baa6f444_activity.pkl new file mode 100644 index 000000000..5f85f432a Binary files /dev/null and b/backend/instance/sessions/aec106b86fce9c25348455f8baa6f444_activity.pkl differ diff --git a/backend/instance/sessions/aec6b83b2cf77da4d2a2ec4ef3df094c_activity.pkl b/backend/instance/sessions/aec6b83b2cf77da4d2a2ec4ef3df094c_activity.pkl new file mode 100644 index 000000000..4e4dcfc0b Binary files /dev/null and b/backend/instance/sessions/aec6b83b2cf77da4d2a2ec4ef3df094c_activity.pkl differ diff --git a/backend/instance/sessions/aed947b87ef34fceb94ff6b5c8b9f60b_activity.pkl b/backend/instance/sessions/aed947b87ef34fceb94ff6b5c8b9f60b_activity.pkl new file mode 100644 index 000000000..0fd1e48c2 Binary files /dev/null and b/backend/instance/sessions/aed947b87ef34fceb94ff6b5c8b9f60b_activity.pkl differ diff --git a/backend/instance/sessions/b0799530d81540fac3ddd1fd33fc4325_activity.pkl b/backend/instance/sessions/b0799530d81540fac3ddd1fd33fc4325_activity.pkl new file mode 100644 index 000000000..cb77b2e38 Binary files /dev/null and b/backend/instance/sessions/b0799530d81540fac3ddd1fd33fc4325_activity.pkl differ diff --git a/backend/instance/sessions/b11ef13a4fb5298b8bd40220ac20a5d4_activity.pkl b/backend/instance/sessions/b11ef13a4fb5298b8bd40220ac20a5d4_activity.pkl new file mode 100644 index 000000000..cc1e3efd2 Binary files /dev/null and b/backend/instance/sessions/b11ef13a4fb5298b8bd40220ac20a5d4_activity.pkl differ diff --git a/backend/instance/sessions/b13fd1622aecd5f810203ce7215fbd5b_activity.pkl b/backend/instance/sessions/b13fd1622aecd5f810203ce7215fbd5b_activity.pkl new file mode 100644 index 000000000..92c3da426 Binary files /dev/null and b/backend/instance/sessions/b13fd1622aecd5f810203ce7215fbd5b_activity.pkl differ diff --git a/backend/instance/sessions/b172a6bd8e3e3bcfe2f494dc1d2f6d82_activity.pkl b/backend/instance/sessions/b172a6bd8e3e3bcfe2f494dc1d2f6d82_activity.pkl new file mode 100644 index 000000000..44401ccec Binary files /dev/null and b/backend/instance/sessions/b172a6bd8e3e3bcfe2f494dc1d2f6d82_activity.pkl differ diff --git a/backend/instance/sessions/b18a3cfc147ba59eef0de8d5ea01b735_activity.pkl b/backend/instance/sessions/b18a3cfc147ba59eef0de8d5ea01b735_activity.pkl new file mode 100644 index 000000000..186a38254 Binary files /dev/null and b/backend/instance/sessions/b18a3cfc147ba59eef0de8d5ea01b735_activity.pkl differ diff --git a/backend/instance/sessions/b1a6f95b34038c3b181e981ca9c26b0d_activity.pkl b/backend/instance/sessions/b1a6f95b34038c3b181e981ca9c26b0d_activity.pkl new file mode 100644 index 000000000..34c697374 Binary files /dev/null and b/backend/instance/sessions/b1a6f95b34038c3b181e981ca9c26b0d_activity.pkl differ diff --git a/backend/instance/sessions/b20b8db9fd8031038405c04dee83c339_activity.pkl b/backend/instance/sessions/b20b8db9fd8031038405c04dee83c339_activity.pkl new file mode 100644 index 000000000..301e57e7d Binary files /dev/null and b/backend/instance/sessions/b20b8db9fd8031038405c04dee83c339_activity.pkl differ diff --git a/backend/instance/sessions/b29545a15c2746bf15fbe54e2f212a4c_activity.pkl b/backend/instance/sessions/b29545a15c2746bf15fbe54e2f212a4c_activity.pkl new file mode 100644 index 000000000..e64ab8bb3 Binary files /dev/null and b/backend/instance/sessions/b29545a15c2746bf15fbe54e2f212a4c_activity.pkl differ diff --git a/backend/instance/sessions/b2a9e125f4ecc10274a3c42e3acf68de_activity.pkl b/backend/instance/sessions/b2a9e125f4ecc10274a3c42e3acf68de_activity.pkl new file mode 100644 index 000000000..9420957ee Binary files /dev/null and b/backend/instance/sessions/b2a9e125f4ecc10274a3c42e3acf68de_activity.pkl differ diff --git a/backend/instance/sessions/b2d4b8ee40f08edfcc68f693c6646a8d_activity.pkl b/backend/instance/sessions/b2d4b8ee40f08edfcc68f693c6646a8d_activity.pkl new file mode 100644 index 000000000..f09a82cad Binary files /dev/null and b/backend/instance/sessions/b2d4b8ee40f08edfcc68f693c6646a8d_activity.pkl differ diff --git a/backend/instance/sessions/b30fc0ec0a7c28c6f2be3dc44154dc20_activity.pkl b/backend/instance/sessions/b30fc0ec0a7c28c6f2be3dc44154dc20_activity.pkl new file mode 100644 index 000000000..6c0e92406 Binary files /dev/null and b/backend/instance/sessions/b30fc0ec0a7c28c6f2be3dc44154dc20_activity.pkl differ diff --git a/backend/instance/sessions/b379e84eff81514f79e75e0c9cc631fb_activity.pkl b/backend/instance/sessions/b379e84eff81514f79e75e0c9cc631fb_activity.pkl new file mode 100644 index 000000000..d87a53e63 Binary files /dev/null and b/backend/instance/sessions/b379e84eff81514f79e75e0c9cc631fb_activity.pkl differ diff --git a/backend/instance/sessions/b48cc7c7cb73c1bb9f6421c085bb1849_activity.pkl b/backend/instance/sessions/b48cc7c7cb73c1bb9f6421c085bb1849_activity.pkl new file mode 100644 index 000000000..0ebbd4584 Binary files /dev/null and b/backend/instance/sessions/b48cc7c7cb73c1bb9f6421c085bb1849_activity.pkl differ diff --git a/backend/instance/sessions/b6b44a668a98c03f18aa149f3c7b3fe4_activity.pkl b/backend/instance/sessions/b6b44a668a98c03f18aa149f3c7b3fe4_activity.pkl new file mode 100644 index 000000000..cf316f1d8 Binary files /dev/null and b/backend/instance/sessions/b6b44a668a98c03f18aa149f3c7b3fe4_activity.pkl differ diff --git a/backend/instance/sessions/b6f2eeb3da503445a561fede0d518751_activity.pkl b/backend/instance/sessions/b6f2eeb3da503445a561fede0d518751_activity.pkl new file mode 100644 index 000000000..537c3995e Binary files /dev/null and b/backend/instance/sessions/b6f2eeb3da503445a561fede0d518751_activity.pkl differ diff --git a/backend/instance/sessions/b7a5580395679fc6c326553f68dcef23_activity.pkl b/backend/instance/sessions/b7a5580395679fc6c326553f68dcef23_activity.pkl new file mode 100644 index 000000000..499d9c545 Binary files /dev/null and b/backend/instance/sessions/b7a5580395679fc6c326553f68dcef23_activity.pkl differ diff --git a/backend/instance/sessions/b7b729144edf31522a981632f7ae0624_activity.pkl b/backend/instance/sessions/b7b729144edf31522a981632f7ae0624_activity.pkl new file mode 100644 index 000000000..7f908e4d4 Binary files /dev/null and b/backend/instance/sessions/b7b729144edf31522a981632f7ae0624_activity.pkl differ diff --git a/backend/instance/sessions/b7fe6acd163a20d2315f66ed6bc8629b_activity.pkl b/backend/instance/sessions/b7fe6acd163a20d2315f66ed6bc8629b_activity.pkl new file mode 100644 index 000000000..58fe6364f Binary files /dev/null and b/backend/instance/sessions/b7fe6acd163a20d2315f66ed6bc8629b_activity.pkl differ diff --git a/backend/instance/sessions/b83bf7bf925a87eab969c1ee23aeff5c_activity.pkl b/backend/instance/sessions/b83bf7bf925a87eab969c1ee23aeff5c_activity.pkl new file mode 100644 index 000000000..a76977efa Binary files /dev/null and b/backend/instance/sessions/b83bf7bf925a87eab969c1ee23aeff5c_activity.pkl differ diff --git a/backend/instance/sessions/b84e0f76adc76230963e246fff3482f3_activity.pkl b/backend/instance/sessions/b84e0f76adc76230963e246fff3482f3_activity.pkl new file mode 100644 index 000000000..72df4a866 Binary files /dev/null and b/backend/instance/sessions/b84e0f76adc76230963e246fff3482f3_activity.pkl differ diff --git a/backend/instance/sessions/b883cbc7160fcb93d41a1392c404fa70_activity.pkl b/backend/instance/sessions/b883cbc7160fcb93d41a1392c404fa70_activity.pkl new file mode 100644 index 000000000..e678370b4 Binary files /dev/null and b/backend/instance/sessions/b883cbc7160fcb93d41a1392c404fa70_activity.pkl differ diff --git a/backend/instance/sessions/b8b61a032e9bb2eeef028d328f422f7e_activity.pkl b/backend/instance/sessions/b8b61a032e9bb2eeef028d328f422f7e_activity.pkl new file mode 100644 index 000000000..a794c8895 Binary files /dev/null and b/backend/instance/sessions/b8b61a032e9bb2eeef028d328f422f7e_activity.pkl differ diff --git a/backend/instance/sessions/b949acd976cfa67dc63bb40452acf0a7_activity.pkl b/backend/instance/sessions/b949acd976cfa67dc63bb40452acf0a7_activity.pkl new file mode 100644 index 000000000..6709840c4 Binary files /dev/null and b/backend/instance/sessions/b949acd976cfa67dc63bb40452acf0a7_activity.pkl differ diff --git a/backend/instance/sessions/b988ff8cb87d39e806f8c1cf1d6562bf_activity.pkl b/backend/instance/sessions/b988ff8cb87d39e806f8c1cf1d6562bf_activity.pkl new file mode 100644 index 000000000..15e597332 Binary files /dev/null and b/backend/instance/sessions/b988ff8cb87d39e806f8c1cf1d6562bf_activity.pkl differ diff --git a/backend/instance/sessions/ba3cb568bae0f861476467f800c3bdb6_activity.pkl b/backend/instance/sessions/ba3cb568bae0f861476467f800c3bdb6_activity.pkl new file mode 100644 index 000000000..ed75f8066 Binary files /dev/null and b/backend/instance/sessions/ba3cb568bae0f861476467f800c3bdb6_activity.pkl differ diff --git a/backend/instance/sessions/ba5ca8d695aab3ac0cd9366e23ecbf30_activity.pkl b/backend/instance/sessions/ba5ca8d695aab3ac0cd9366e23ecbf30_activity.pkl new file mode 100644 index 000000000..8f5b48ed8 Binary files /dev/null and b/backend/instance/sessions/ba5ca8d695aab3ac0cd9366e23ecbf30_activity.pkl differ diff --git a/backend/instance/sessions/ba70176f6e1e02d2f397eb93609512d0_activity.pkl b/backend/instance/sessions/ba70176f6e1e02d2f397eb93609512d0_activity.pkl new file mode 100644 index 000000000..9254a3448 Binary files /dev/null and b/backend/instance/sessions/ba70176f6e1e02d2f397eb93609512d0_activity.pkl differ diff --git a/backend/instance/sessions/bb0c9c9cb6bd6d9c00dbf962f0952b59_activity.pkl b/backend/instance/sessions/bb0c9c9cb6bd6d9c00dbf962f0952b59_activity.pkl new file mode 100644 index 000000000..e1cc706a2 Binary files /dev/null and b/backend/instance/sessions/bb0c9c9cb6bd6d9c00dbf962f0952b59_activity.pkl differ diff --git a/backend/instance/sessions/bb3d17c64597de7446ba0f812d4b00a6_activity.pkl b/backend/instance/sessions/bb3d17c64597de7446ba0f812d4b00a6_activity.pkl new file mode 100644 index 000000000..911ae10ff Binary files /dev/null and b/backend/instance/sessions/bb3d17c64597de7446ba0f812d4b00a6_activity.pkl differ diff --git a/backend/instance/sessions/bbb4a8cfc22bb2512306b4589113bd11_activity.pkl b/backend/instance/sessions/bbb4a8cfc22bb2512306b4589113bd11_activity.pkl new file mode 100644 index 000000000..8a1345991 Binary files /dev/null and b/backend/instance/sessions/bbb4a8cfc22bb2512306b4589113bd11_activity.pkl differ diff --git a/backend/instance/sessions/bc8808cc33472fe09716904348530b22_activity.pkl b/backend/instance/sessions/bc8808cc33472fe09716904348530b22_activity.pkl new file mode 100644 index 000000000..9cb0e1016 Binary files /dev/null and b/backend/instance/sessions/bc8808cc33472fe09716904348530b22_activity.pkl differ diff --git a/backend/instance/sessions/bd14a0818f2203818affdaf727c56ddd_activity.pkl b/backend/instance/sessions/bd14a0818f2203818affdaf727c56ddd_activity.pkl new file mode 100644 index 000000000..ff1e486d8 Binary files /dev/null and b/backend/instance/sessions/bd14a0818f2203818affdaf727c56ddd_activity.pkl differ diff --git a/backend/instance/sessions/bd37c165e101465101ef778feb86339b_activity.pkl b/backend/instance/sessions/bd37c165e101465101ef778feb86339b_activity.pkl new file mode 100644 index 000000000..883bb4858 Binary files /dev/null and b/backend/instance/sessions/bd37c165e101465101ef778feb86339b_activity.pkl differ diff --git a/backend/instance/sessions/bdaf0a5c0ece3805eb8322815e6b15f3_activity.pkl b/backend/instance/sessions/bdaf0a5c0ece3805eb8322815e6b15f3_activity.pkl new file mode 100644 index 000000000..34d3739bb Binary files /dev/null and b/backend/instance/sessions/bdaf0a5c0ece3805eb8322815e6b15f3_activity.pkl differ diff --git a/backend/instance/sessions/be3204127acac7ddba79ed91b6e0e1d5_activity.pkl b/backend/instance/sessions/be3204127acac7ddba79ed91b6e0e1d5_activity.pkl new file mode 100644 index 000000000..0960acba1 Binary files /dev/null and b/backend/instance/sessions/be3204127acac7ddba79ed91b6e0e1d5_activity.pkl differ diff --git a/backend/instance/sessions/be4c1dd7d8dddce111b0eda528cc31e1_activity.pkl b/backend/instance/sessions/be4c1dd7d8dddce111b0eda528cc31e1_activity.pkl new file mode 100644 index 000000000..7cd6ed4d3 Binary files /dev/null and b/backend/instance/sessions/be4c1dd7d8dddce111b0eda528cc31e1_activity.pkl differ diff --git a/backend/instance/sessions/bebdebec772e9bbcffaadc3defefe12c_activity.pkl b/backend/instance/sessions/bebdebec772e9bbcffaadc3defefe12c_activity.pkl new file mode 100644 index 000000000..0c62e921a Binary files /dev/null and b/backend/instance/sessions/bebdebec772e9bbcffaadc3defefe12c_activity.pkl differ diff --git a/backend/instance/sessions/bf23467b1df2277ebd37111b5120cf7a_activity.pkl b/backend/instance/sessions/bf23467b1df2277ebd37111b5120cf7a_activity.pkl new file mode 100644 index 000000000..83bcb8527 Binary files /dev/null and b/backend/instance/sessions/bf23467b1df2277ebd37111b5120cf7a_activity.pkl differ diff --git a/backend/instance/sessions/c023004b795e4e635684c6140d82cba9_activity.pkl b/backend/instance/sessions/c023004b795e4e635684c6140d82cba9_activity.pkl new file mode 100644 index 000000000..7ab82ebc5 Binary files /dev/null and b/backend/instance/sessions/c023004b795e4e635684c6140d82cba9_activity.pkl differ diff --git a/backend/instance/sessions/c06486a0cc74fff7c93348271ef6b8b4_activity.pkl b/backend/instance/sessions/c06486a0cc74fff7c93348271ef6b8b4_activity.pkl new file mode 100644 index 000000000..9136177e6 Binary files /dev/null and b/backend/instance/sessions/c06486a0cc74fff7c93348271ef6b8b4_activity.pkl differ diff --git a/backend/instance/sessions/c07b6e3973a670ed29a3e4f27bac22ff_activity.pkl b/backend/instance/sessions/c07b6e3973a670ed29a3e4f27bac22ff_activity.pkl new file mode 100644 index 000000000..31d5c8369 Binary files /dev/null and b/backend/instance/sessions/c07b6e3973a670ed29a3e4f27bac22ff_activity.pkl differ diff --git a/backend/instance/sessions/c1521350dd82b408cef59c9904c71c54_activity.pkl b/backend/instance/sessions/c1521350dd82b408cef59c9904c71c54_activity.pkl new file mode 100644 index 000000000..66f74d38a Binary files /dev/null and b/backend/instance/sessions/c1521350dd82b408cef59c9904c71c54_activity.pkl differ diff --git a/backend/instance/sessions/c167cc958ff31b8e11d54b4abd333dd4_activity.pkl b/backend/instance/sessions/c167cc958ff31b8e11d54b4abd333dd4_activity.pkl new file mode 100644 index 000000000..d579ba5fe Binary files /dev/null and b/backend/instance/sessions/c167cc958ff31b8e11d54b4abd333dd4_activity.pkl differ diff --git a/backend/instance/sessions/c215d5d52f417aadd203ac275adf8679_activity.pkl b/backend/instance/sessions/c215d5d52f417aadd203ac275adf8679_activity.pkl new file mode 100644 index 000000000..a242bee18 Binary files /dev/null and b/backend/instance/sessions/c215d5d52f417aadd203ac275adf8679_activity.pkl differ diff --git a/backend/instance/sessions/c2977a7f484069a36267c78aabecd130_activity.pkl b/backend/instance/sessions/c2977a7f484069a36267c78aabecd130_activity.pkl new file mode 100644 index 000000000..e0d7d9c94 Binary files /dev/null and b/backend/instance/sessions/c2977a7f484069a36267c78aabecd130_activity.pkl differ diff --git a/backend/instance/sessions/c2ad180532ac05a5e8aa1194832a1f60_activity.pkl b/backend/instance/sessions/c2ad180532ac05a5e8aa1194832a1f60_activity.pkl new file mode 100644 index 000000000..66fd1cd79 Binary files /dev/null and b/backend/instance/sessions/c2ad180532ac05a5e8aa1194832a1f60_activity.pkl differ diff --git a/backend/instance/sessions/c3066cb0651d985e75348713f63c80d7_activity.pkl b/backend/instance/sessions/c3066cb0651d985e75348713f63c80d7_activity.pkl new file mode 100644 index 000000000..97f48cbc1 Binary files /dev/null and b/backend/instance/sessions/c3066cb0651d985e75348713f63c80d7_activity.pkl differ diff --git a/backend/instance/sessions/c319ea6b48386ee1697dbabebaf2f7a3_activity.pkl b/backend/instance/sessions/c319ea6b48386ee1697dbabebaf2f7a3_activity.pkl new file mode 100644 index 000000000..4c7ce2223 Binary files /dev/null and b/backend/instance/sessions/c319ea6b48386ee1697dbabebaf2f7a3_activity.pkl differ diff --git a/backend/instance/sessions/c35f2a1b37a18c97cf1cf1f0ad215094_activity.pkl b/backend/instance/sessions/c35f2a1b37a18c97cf1cf1f0ad215094_activity.pkl new file mode 100644 index 000000000..d544263a0 Binary files /dev/null and b/backend/instance/sessions/c35f2a1b37a18c97cf1cf1f0ad215094_activity.pkl differ diff --git a/backend/instance/sessions/c3815080c662cafe06ff08d46abf6fbb_activity.pkl b/backend/instance/sessions/c3815080c662cafe06ff08d46abf6fbb_activity.pkl new file mode 100644 index 000000000..514db61e1 Binary files /dev/null and b/backend/instance/sessions/c3815080c662cafe06ff08d46abf6fbb_activity.pkl differ diff --git a/backend/instance/sessions/c3b4b46d479e29d58fae0c6a7aa8639d_activity.pkl b/backend/instance/sessions/c3b4b46d479e29d58fae0c6a7aa8639d_activity.pkl new file mode 100644 index 000000000..0f8e2e13c Binary files /dev/null and b/backend/instance/sessions/c3b4b46d479e29d58fae0c6a7aa8639d_activity.pkl differ diff --git a/backend/instance/sessions/c3b63a3358b7e503b4f370478d7b88ac_activity.pkl b/backend/instance/sessions/c3b63a3358b7e503b4f370478d7b88ac_activity.pkl new file mode 100644 index 000000000..7c787625d Binary files /dev/null and b/backend/instance/sessions/c3b63a3358b7e503b4f370478d7b88ac_activity.pkl differ diff --git a/backend/instance/sessions/c3ba313ec07f779bc86dbbacf52ab7a5_activity.pkl b/backend/instance/sessions/c3ba313ec07f779bc86dbbacf52ab7a5_activity.pkl new file mode 100644 index 000000000..30342d3ed Binary files /dev/null and b/backend/instance/sessions/c3ba313ec07f779bc86dbbacf52ab7a5_activity.pkl differ diff --git a/backend/instance/sessions/c3d6fd383e35688eacd97c2f80f6a5ac_activity.pkl b/backend/instance/sessions/c3d6fd383e35688eacd97c2f80f6a5ac_activity.pkl new file mode 100644 index 000000000..3d8a6ea5e Binary files /dev/null and b/backend/instance/sessions/c3d6fd383e35688eacd97c2f80f6a5ac_activity.pkl differ diff --git a/backend/instance/sessions/c453ae61a60d58e34b0adef59415f498_activity.pkl b/backend/instance/sessions/c453ae61a60d58e34b0adef59415f498_activity.pkl new file mode 100644 index 000000000..72a32b40a Binary files /dev/null and b/backend/instance/sessions/c453ae61a60d58e34b0adef59415f498_activity.pkl differ diff --git a/backend/instance/sessions/c45ee805ddde254e16a8e745782700cc_activity.pkl b/backend/instance/sessions/c45ee805ddde254e16a8e745782700cc_activity.pkl new file mode 100644 index 000000000..507e7d18a Binary files /dev/null and b/backend/instance/sessions/c45ee805ddde254e16a8e745782700cc_activity.pkl differ diff --git a/backend/instance/sessions/c62eaaf6038c01b7defe237d8d71e713_activity.pkl b/backend/instance/sessions/c62eaaf6038c01b7defe237d8d71e713_activity.pkl new file mode 100644 index 000000000..621360771 Binary files /dev/null and b/backend/instance/sessions/c62eaaf6038c01b7defe237d8d71e713_activity.pkl differ diff --git a/backend/instance/sessions/c65525c472e4ab04bef49f5f3de5a794_activity.pkl b/backend/instance/sessions/c65525c472e4ab04bef49f5f3de5a794_activity.pkl new file mode 100644 index 000000000..719f96910 Binary files /dev/null and b/backend/instance/sessions/c65525c472e4ab04bef49f5f3de5a794_activity.pkl differ diff --git a/backend/instance/sessions/c66a4b8a33039203a194d8cc921dbd65_activity.pkl b/backend/instance/sessions/c66a4b8a33039203a194d8cc921dbd65_activity.pkl new file mode 100644 index 000000000..eb1d404b6 Binary files /dev/null and b/backend/instance/sessions/c66a4b8a33039203a194d8cc921dbd65_activity.pkl differ diff --git a/backend/instance/sessions/c689600d1bb0f9789e166ac367e1911c_activity.pkl b/backend/instance/sessions/c689600d1bb0f9789e166ac367e1911c_activity.pkl new file mode 100644 index 000000000..77d7985b4 Binary files /dev/null and b/backend/instance/sessions/c689600d1bb0f9789e166ac367e1911c_activity.pkl differ diff --git a/backend/instance/sessions/c6b1b3f1d889e862a0bd01c257d64e2c_activity.pkl b/backend/instance/sessions/c6b1b3f1d889e862a0bd01c257d64e2c_activity.pkl new file mode 100644 index 000000000..876fe43a6 Binary files /dev/null and b/backend/instance/sessions/c6b1b3f1d889e862a0bd01c257d64e2c_activity.pkl differ diff --git a/backend/instance/sessions/c826951d27cb9f22ac90b6166e6ced1b_activity.pkl b/backend/instance/sessions/c826951d27cb9f22ac90b6166e6ced1b_activity.pkl new file mode 100644 index 000000000..c1ae81228 Binary files /dev/null and b/backend/instance/sessions/c826951d27cb9f22ac90b6166e6ced1b_activity.pkl differ diff --git a/backend/instance/sessions/c880df22d6a6b9f8f03e79f1f5f65519_activity.pkl b/backend/instance/sessions/c880df22d6a6b9f8f03e79f1f5f65519_activity.pkl new file mode 100644 index 000000000..f3ce46a22 Binary files /dev/null and b/backend/instance/sessions/c880df22d6a6b9f8f03e79f1f5f65519_activity.pkl differ diff --git a/backend/instance/sessions/c897828d8595d7a65ee17cfaf8621727_activity.pkl b/backend/instance/sessions/c897828d8595d7a65ee17cfaf8621727_activity.pkl new file mode 100644 index 000000000..666cdb892 Binary files /dev/null and b/backend/instance/sessions/c897828d8595d7a65ee17cfaf8621727_activity.pkl differ diff --git a/backend/instance/sessions/c901829406db2d4c0f58454c2a512272_activity.pkl b/backend/instance/sessions/c901829406db2d4c0f58454c2a512272_activity.pkl new file mode 100644 index 000000000..c6a0bcfe1 Binary files /dev/null and b/backend/instance/sessions/c901829406db2d4c0f58454c2a512272_activity.pkl differ diff --git a/backend/instance/sessions/c90d5e7d4c675971b18f7048d385f22d_activity.pkl b/backend/instance/sessions/c90d5e7d4c675971b18f7048d385f22d_activity.pkl new file mode 100644 index 000000000..0a243b189 Binary files /dev/null and b/backend/instance/sessions/c90d5e7d4c675971b18f7048d385f22d_activity.pkl differ diff --git a/backend/instance/sessions/c9a8efcb45694edecfc2c2a9d8f901a7_activity.pkl b/backend/instance/sessions/c9a8efcb45694edecfc2c2a9d8f901a7_activity.pkl new file mode 100644 index 000000000..505c16653 Binary files /dev/null and b/backend/instance/sessions/c9a8efcb45694edecfc2c2a9d8f901a7_activity.pkl differ diff --git a/backend/instance/sessions/c9ff99cfbbf43717a5a5c6a41bfe9528_activity.pkl b/backend/instance/sessions/c9ff99cfbbf43717a5a5c6a41bfe9528_activity.pkl new file mode 100644 index 000000000..01e611665 Binary files /dev/null and b/backend/instance/sessions/c9ff99cfbbf43717a5a5c6a41bfe9528_activity.pkl differ diff --git a/backend/instance/sessions/ca08eaf8a848261624d4e263ff47c7e6_activity.pkl b/backend/instance/sessions/ca08eaf8a848261624d4e263ff47c7e6_activity.pkl new file mode 100644 index 000000000..3258655f1 Binary files /dev/null and b/backend/instance/sessions/ca08eaf8a848261624d4e263ff47c7e6_activity.pkl differ diff --git a/backend/instance/sessions/cbc8dc98ceeb8b8e07546ddfea7fcd35_activity.pkl b/backend/instance/sessions/cbc8dc98ceeb8b8e07546ddfea7fcd35_activity.pkl new file mode 100644 index 000000000..6e0d18fa3 Binary files /dev/null and b/backend/instance/sessions/cbc8dc98ceeb8b8e07546ddfea7fcd35_activity.pkl differ diff --git a/backend/instance/sessions/cc4bef0c09beab5c6d93b337c714e257_activity.pkl b/backend/instance/sessions/cc4bef0c09beab5c6d93b337c714e257_activity.pkl new file mode 100644 index 000000000..2ad7fa8b7 Binary files /dev/null and b/backend/instance/sessions/cc4bef0c09beab5c6d93b337c714e257_activity.pkl differ diff --git a/backend/instance/sessions/cc5620a2e0d877cbe6ac4ced65d8aa2a_activity.pkl b/backend/instance/sessions/cc5620a2e0d877cbe6ac4ced65d8aa2a_activity.pkl new file mode 100644 index 000000000..2b52620d8 Binary files /dev/null and b/backend/instance/sessions/cc5620a2e0d877cbe6ac4ced65d8aa2a_activity.pkl differ diff --git a/backend/instance/sessions/cca8c3cb86559acb6e915c15220764fe_activity.pkl b/backend/instance/sessions/cca8c3cb86559acb6e915c15220764fe_activity.pkl new file mode 100644 index 000000000..f0d0950f4 Binary files /dev/null and b/backend/instance/sessions/cca8c3cb86559acb6e915c15220764fe_activity.pkl differ diff --git a/backend/instance/sessions/cd27f963002d12065a9e8b6f7954d93f_activity.pkl b/backend/instance/sessions/cd27f963002d12065a9e8b6f7954d93f_activity.pkl new file mode 100644 index 000000000..8bebcac85 Binary files /dev/null and b/backend/instance/sessions/cd27f963002d12065a9e8b6f7954d93f_activity.pkl differ diff --git a/backend/instance/sessions/cd360c9ebd81598afa3111b7f55206d9_activity.pkl b/backend/instance/sessions/cd360c9ebd81598afa3111b7f55206d9_activity.pkl new file mode 100644 index 000000000..2d166c26e Binary files /dev/null and b/backend/instance/sessions/cd360c9ebd81598afa3111b7f55206d9_activity.pkl differ diff --git a/backend/instance/sessions/cd48d1f7a0104a5acb4d7010765d55c4_activity.pkl b/backend/instance/sessions/cd48d1f7a0104a5acb4d7010765d55c4_activity.pkl new file mode 100644 index 000000000..408c5b48c Binary files /dev/null and b/backend/instance/sessions/cd48d1f7a0104a5acb4d7010765d55c4_activity.pkl differ diff --git a/backend/instance/sessions/cd97c485caeda77c40644fecc50af4a6_activity.pkl b/backend/instance/sessions/cd97c485caeda77c40644fecc50af4a6_activity.pkl new file mode 100644 index 000000000..aad232366 Binary files /dev/null and b/backend/instance/sessions/cd97c485caeda77c40644fecc50af4a6_activity.pkl differ diff --git a/backend/instance/sessions/cdb39db6ec71abedcf168fb62cd31254_activity.pkl b/backend/instance/sessions/cdb39db6ec71abedcf168fb62cd31254_activity.pkl new file mode 100644 index 000000000..428219af2 Binary files /dev/null and b/backend/instance/sessions/cdb39db6ec71abedcf168fb62cd31254_activity.pkl differ diff --git a/backend/instance/sessions/cdd814591aee35a8ae1b72dd59c9d5bf_activity.pkl b/backend/instance/sessions/cdd814591aee35a8ae1b72dd59c9d5bf_activity.pkl new file mode 100644 index 000000000..e58f674bf Binary files /dev/null and b/backend/instance/sessions/cdd814591aee35a8ae1b72dd59c9d5bf_activity.pkl differ diff --git a/backend/instance/sessions/ce9046327ecd54096695c61d154f7960_activity.pkl b/backend/instance/sessions/ce9046327ecd54096695c61d154f7960_activity.pkl new file mode 100644 index 000000000..024b7e927 Binary files /dev/null and b/backend/instance/sessions/ce9046327ecd54096695c61d154f7960_activity.pkl differ diff --git a/backend/instance/sessions/cf20f24e8db54e6342e207b0c620ea20_activity.pkl b/backend/instance/sessions/cf20f24e8db54e6342e207b0c620ea20_activity.pkl new file mode 100644 index 000000000..1cd640980 Binary files /dev/null and b/backend/instance/sessions/cf20f24e8db54e6342e207b0c620ea20_activity.pkl differ diff --git a/backend/instance/sessions/cfc6d9d4c7cfe923536d7e718ea56f86_activity.pkl b/backend/instance/sessions/cfc6d9d4c7cfe923536d7e718ea56f86_activity.pkl new file mode 100644 index 000000000..59fd07dab Binary files /dev/null and b/backend/instance/sessions/cfc6d9d4c7cfe923536d7e718ea56f86_activity.pkl differ diff --git a/backend/instance/sessions/d0196f8fcaa220cdfbb49afcaeb699b1_activity.pkl b/backend/instance/sessions/d0196f8fcaa220cdfbb49afcaeb699b1_activity.pkl new file mode 100644 index 000000000..f63894607 Binary files /dev/null and b/backend/instance/sessions/d0196f8fcaa220cdfbb49afcaeb699b1_activity.pkl differ diff --git a/backend/instance/sessions/d0c48617ea6b9c2597877ec67bf537f1_activity.pkl b/backend/instance/sessions/d0c48617ea6b9c2597877ec67bf537f1_activity.pkl new file mode 100644 index 000000000..26793cac1 Binary files /dev/null and b/backend/instance/sessions/d0c48617ea6b9c2597877ec67bf537f1_activity.pkl differ diff --git a/backend/instance/sessions/d18639ba7cfb1c3fc2a005f543e573f2_activity.pkl b/backend/instance/sessions/d18639ba7cfb1c3fc2a005f543e573f2_activity.pkl new file mode 100644 index 000000000..75fb9f619 Binary files /dev/null and b/backend/instance/sessions/d18639ba7cfb1c3fc2a005f543e573f2_activity.pkl differ diff --git a/backend/instance/sessions/d2583a719f7c82a1ef6e8fbcc0adbda9_activity.pkl b/backend/instance/sessions/d2583a719f7c82a1ef6e8fbcc0adbda9_activity.pkl new file mode 100644 index 000000000..c57cd849e Binary files /dev/null and b/backend/instance/sessions/d2583a719f7c82a1ef6e8fbcc0adbda9_activity.pkl differ diff --git a/backend/instance/sessions/d39038eda1cc06d4b4bf810510ff2203_activity.pkl b/backend/instance/sessions/d39038eda1cc06d4b4bf810510ff2203_activity.pkl new file mode 100644 index 000000000..cf7355b26 Binary files /dev/null and b/backend/instance/sessions/d39038eda1cc06d4b4bf810510ff2203_activity.pkl differ diff --git a/backend/instance/sessions/d3b0dd5999bbbf820a9c817000631d62_activity.pkl b/backend/instance/sessions/d3b0dd5999bbbf820a9c817000631d62_activity.pkl new file mode 100644 index 000000000..99b9de732 Binary files /dev/null and b/backend/instance/sessions/d3b0dd5999bbbf820a9c817000631d62_activity.pkl differ diff --git a/backend/instance/sessions/d49510cbc90d7af56a066a3642c61f1e_activity.pkl b/backend/instance/sessions/d49510cbc90d7af56a066a3642c61f1e_activity.pkl new file mode 100644 index 000000000..bed05a8f1 Binary files /dev/null and b/backend/instance/sessions/d49510cbc90d7af56a066a3642c61f1e_activity.pkl differ diff --git a/backend/instance/sessions/d532eae5885b24cf768387b0f387c572_activity.pkl b/backend/instance/sessions/d532eae5885b24cf768387b0f387c572_activity.pkl new file mode 100644 index 000000000..d3fae4ce8 Binary files /dev/null and b/backend/instance/sessions/d532eae5885b24cf768387b0f387c572_activity.pkl differ diff --git a/backend/instance/sessions/d562e6070ed9beb31d95ad64aca3e621_activity.pkl b/backend/instance/sessions/d562e6070ed9beb31d95ad64aca3e621_activity.pkl new file mode 100644 index 000000000..46c8140d6 Binary files /dev/null and b/backend/instance/sessions/d562e6070ed9beb31d95ad64aca3e621_activity.pkl differ diff --git a/backend/instance/sessions/d60df0123f358ac840e0604c733eca9c_activity.pkl b/backend/instance/sessions/d60df0123f358ac840e0604c733eca9c_activity.pkl new file mode 100644 index 000000000..a0000345d Binary files /dev/null and b/backend/instance/sessions/d60df0123f358ac840e0604c733eca9c_activity.pkl differ diff --git a/backend/instance/sessions/d66a9b7cbb3602b57551f5c9b7a0cd3e_activity.pkl b/backend/instance/sessions/d66a9b7cbb3602b57551f5c9b7a0cd3e_activity.pkl new file mode 100644 index 000000000..d0661d310 Binary files /dev/null and b/backend/instance/sessions/d66a9b7cbb3602b57551f5c9b7a0cd3e_activity.pkl differ diff --git a/backend/instance/sessions/d760e76a9120c4bfc56a503b94d37dbc_activity.pkl b/backend/instance/sessions/d760e76a9120c4bfc56a503b94d37dbc_activity.pkl new file mode 100644 index 000000000..3a1d2bdc0 Binary files /dev/null and b/backend/instance/sessions/d760e76a9120c4bfc56a503b94d37dbc_activity.pkl differ diff --git a/backend/instance/sessions/d771ccd8ddf787f78f97cb176a4e2131_activity.pkl b/backend/instance/sessions/d771ccd8ddf787f78f97cb176a4e2131_activity.pkl new file mode 100644 index 000000000..7bab6492a Binary files /dev/null and b/backend/instance/sessions/d771ccd8ddf787f78f97cb176a4e2131_activity.pkl differ diff --git a/backend/instance/sessions/d7ce08e9787653b41ddc98a16522d7a6_activity.pkl b/backend/instance/sessions/d7ce08e9787653b41ddc98a16522d7a6_activity.pkl new file mode 100644 index 000000000..72fdbf3a0 Binary files /dev/null and b/backend/instance/sessions/d7ce08e9787653b41ddc98a16522d7a6_activity.pkl differ diff --git a/backend/instance/sessions/d7d39bd89683b027466c4affac1ef66e_activity.pkl b/backend/instance/sessions/d7d39bd89683b027466c4affac1ef66e_activity.pkl new file mode 100644 index 000000000..d877765ad Binary files /dev/null and b/backend/instance/sessions/d7d39bd89683b027466c4affac1ef66e_activity.pkl differ diff --git a/backend/instance/sessions/d7d8fa31be94c91e66e6c8a7c43d2023_activity.pkl b/backend/instance/sessions/d7d8fa31be94c91e66e6c8a7c43d2023_activity.pkl new file mode 100644 index 000000000..7f6267c9e Binary files /dev/null and b/backend/instance/sessions/d7d8fa31be94c91e66e6c8a7c43d2023_activity.pkl differ diff --git a/backend/instance/sessions/d7e39dbcbc2ddae043b33cdab288b8e1_activity.pkl b/backend/instance/sessions/d7e39dbcbc2ddae043b33cdab288b8e1_activity.pkl new file mode 100644 index 000000000..3d117c01f Binary files /dev/null and b/backend/instance/sessions/d7e39dbcbc2ddae043b33cdab288b8e1_activity.pkl differ diff --git a/backend/instance/sessions/d7f23f00933bb87cd810fd9f0e8a7d33_activity.pkl b/backend/instance/sessions/d7f23f00933bb87cd810fd9f0e8a7d33_activity.pkl new file mode 100644 index 000000000..6243d35ed Binary files /dev/null and b/backend/instance/sessions/d7f23f00933bb87cd810fd9f0e8a7d33_activity.pkl differ diff --git a/backend/instance/sessions/d7fd0711f4898c1a658817ec259e55be_activity.pkl b/backend/instance/sessions/d7fd0711f4898c1a658817ec259e55be_activity.pkl new file mode 100644 index 000000000..5cc179f43 Binary files /dev/null and b/backend/instance/sessions/d7fd0711f4898c1a658817ec259e55be_activity.pkl differ diff --git a/backend/instance/sessions/d85e016262044ac582d1d4d42a796a1b_activity.pkl b/backend/instance/sessions/d85e016262044ac582d1d4d42a796a1b_activity.pkl new file mode 100644 index 000000000..4b856965a Binary files /dev/null and b/backend/instance/sessions/d85e016262044ac582d1d4d42a796a1b_activity.pkl differ diff --git a/backend/instance/sessions/d86391404c086e2d5967df629efbc2db_activity.pkl b/backend/instance/sessions/d86391404c086e2d5967df629efbc2db_activity.pkl new file mode 100644 index 000000000..47884549b Binary files /dev/null and b/backend/instance/sessions/d86391404c086e2d5967df629efbc2db_activity.pkl differ diff --git a/backend/instance/sessions/d9198848cfc23e5eb13d083ab3df9f64_activity.pkl b/backend/instance/sessions/d9198848cfc23e5eb13d083ab3df9f64_activity.pkl new file mode 100644 index 000000000..5695fd8ca Binary files /dev/null and b/backend/instance/sessions/d9198848cfc23e5eb13d083ab3df9f64_activity.pkl differ diff --git a/backend/instance/sessions/d9bdfe1d79289e0e67a37a3d84ffcce1_activity.pkl b/backend/instance/sessions/d9bdfe1d79289e0e67a37a3d84ffcce1_activity.pkl new file mode 100644 index 000000000..a884798ef Binary files /dev/null and b/backend/instance/sessions/d9bdfe1d79289e0e67a37a3d84ffcce1_activity.pkl differ diff --git a/backend/instance/sessions/da29e79a7e92578d7c20e72474f11702_activity.pkl b/backend/instance/sessions/da29e79a7e92578d7c20e72474f11702_activity.pkl new file mode 100644 index 000000000..17413e24a Binary files /dev/null and b/backend/instance/sessions/da29e79a7e92578d7c20e72474f11702_activity.pkl differ diff --git a/backend/instance/sessions/daa7f8e9dfa30d8a3598bca181ea833c_activity.pkl b/backend/instance/sessions/daa7f8e9dfa30d8a3598bca181ea833c_activity.pkl new file mode 100644 index 000000000..cf353637d Binary files /dev/null and b/backend/instance/sessions/daa7f8e9dfa30d8a3598bca181ea833c_activity.pkl differ diff --git a/backend/instance/sessions/db0bdf579a9b62c43a9a0abd53c8af32_activity.pkl b/backend/instance/sessions/db0bdf579a9b62c43a9a0abd53c8af32_activity.pkl new file mode 100644 index 000000000..23147b1dc Binary files /dev/null and b/backend/instance/sessions/db0bdf579a9b62c43a9a0abd53c8af32_activity.pkl differ diff --git a/backend/instance/sessions/db47a071cc8b906a54569fe9b5bb466e_activity.pkl b/backend/instance/sessions/db47a071cc8b906a54569fe9b5bb466e_activity.pkl new file mode 100644 index 000000000..78349955e Binary files /dev/null and b/backend/instance/sessions/db47a071cc8b906a54569fe9b5bb466e_activity.pkl differ diff --git a/backend/instance/sessions/db6b903f3e002d55106c0247f784b77e_activity.pkl b/backend/instance/sessions/db6b903f3e002d55106c0247f784b77e_activity.pkl new file mode 100644 index 000000000..2ae7380d2 Binary files /dev/null and b/backend/instance/sessions/db6b903f3e002d55106c0247f784b77e_activity.pkl differ diff --git a/backend/instance/sessions/dba9275561984505809570c5d1c9edfa_activity.pkl b/backend/instance/sessions/dba9275561984505809570c5d1c9edfa_activity.pkl new file mode 100644 index 000000000..879a3c7aa Binary files /dev/null and b/backend/instance/sessions/dba9275561984505809570c5d1c9edfa_activity.pkl differ diff --git a/backend/instance/sessions/ddc14aeef7fd9246df17ac616ec30b62_activity.pkl b/backend/instance/sessions/ddc14aeef7fd9246df17ac616ec30b62_activity.pkl new file mode 100644 index 000000000..7b0dbd116 Binary files /dev/null and b/backend/instance/sessions/ddc14aeef7fd9246df17ac616ec30b62_activity.pkl differ diff --git a/backend/instance/sessions/de2e6be9806b1f95f33d5dcdfa518ed4_activity.pkl b/backend/instance/sessions/de2e6be9806b1f95f33d5dcdfa518ed4_activity.pkl new file mode 100644 index 000000000..0095053e2 Binary files /dev/null and b/backend/instance/sessions/de2e6be9806b1f95f33d5dcdfa518ed4_activity.pkl differ diff --git a/backend/instance/sessions/dee7f2efa3716d4d2d0972be7321be0d_activity.pkl b/backend/instance/sessions/dee7f2efa3716d4d2d0972be7321be0d_activity.pkl new file mode 100644 index 000000000..5c741b007 Binary files /dev/null and b/backend/instance/sessions/dee7f2efa3716d4d2d0972be7321be0d_activity.pkl differ diff --git a/backend/instance/sessions/df351e39bf54d68936dd87a2bf074720_activity.pkl b/backend/instance/sessions/df351e39bf54d68936dd87a2bf074720_activity.pkl new file mode 100644 index 000000000..74e3af5a7 Binary files /dev/null and b/backend/instance/sessions/df351e39bf54d68936dd87a2bf074720_activity.pkl differ diff --git a/backend/instance/sessions/df3c0da77e78cd6f5c0a5f3fb73aa8c6_activity.pkl b/backend/instance/sessions/df3c0da77e78cd6f5c0a5f3fb73aa8c6_activity.pkl new file mode 100644 index 000000000..47c2a4ce5 Binary files /dev/null and b/backend/instance/sessions/df3c0da77e78cd6f5c0a5f3fb73aa8c6_activity.pkl differ diff --git a/backend/instance/sessions/df4b5191358bb0e60883bd74d24aaaad_activity.pkl b/backend/instance/sessions/df4b5191358bb0e60883bd74d24aaaad_activity.pkl new file mode 100644 index 000000000..dee93b376 Binary files /dev/null and b/backend/instance/sessions/df4b5191358bb0e60883bd74d24aaaad_activity.pkl differ diff --git a/backend/instance/sessions/df75139ea8a1d63ba089f03ec0327b68_activity.pkl b/backend/instance/sessions/df75139ea8a1d63ba089f03ec0327b68_activity.pkl new file mode 100644 index 000000000..485b7f9bf Binary files /dev/null and b/backend/instance/sessions/df75139ea8a1d63ba089f03ec0327b68_activity.pkl differ diff --git a/backend/instance/sessions/e0a2979b8d1f529ba848dcde882a0b98_activity.pkl b/backend/instance/sessions/e0a2979b8d1f529ba848dcde882a0b98_activity.pkl new file mode 100644 index 000000000..506a84aab Binary files /dev/null and b/backend/instance/sessions/e0a2979b8d1f529ba848dcde882a0b98_activity.pkl differ diff --git a/backend/instance/sessions/e0f8379e53a03fe978e3b3efc8215366_activity.pkl b/backend/instance/sessions/e0f8379e53a03fe978e3b3efc8215366_activity.pkl new file mode 100644 index 000000000..fa9c17ea0 Binary files /dev/null and b/backend/instance/sessions/e0f8379e53a03fe978e3b3efc8215366_activity.pkl differ diff --git a/backend/instance/sessions/e143b4b5e30ffcf77bf905d1ce8ab37c_activity.pkl b/backend/instance/sessions/e143b4b5e30ffcf77bf905d1ce8ab37c_activity.pkl new file mode 100644 index 000000000..a5f83a5a0 Binary files /dev/null and b/backend/instance/sessions/e143b4b5e30ffcf77bf905d1ce8ab37c_activity.pkl differ diff --git a/backend/instance/sessions/e1c0cb9d96040c1cfb80817f0d44c1d1_activity.pkl b/backend/instance/sessions/e1c0cb9d96040c1cfb80817f0d44c1d1_activity.pkl new file mode 100644 index 000000000..114134610 Binary files /dev/null and b/backend/instance/sessions/e1c0cb9d96040c1cfb80817f0d44c1d1_activity.pkl differ diff --git a/backend/instance/sessions/e1d3932e1fe6d64747ca2792b7f448b8_activity.pkl b/backend/instance/sessions/e1d3932e1fe6d64747ca2792b7f448b8_activity.pkl new file mode 100644 index 000000000..fd9b4b28b Binary files /dev/null and b/backend/instance/sessions/e1d3932e1fe6d64747ca2792b7f448b8_activity.pkl differ diff --git a/backend/instance/sessions/e1e96d5aa8fbb1b7b8e383dd3a64b829_activity.pkl b/backend/instance/sessions/e1e96d5aa8fbb1b7b8e383dd3a64b829_activity.pkl new file mode 100644 index 000000000..76a32bc92 Binary files /dev/null and b/backend/instance/sessions/e1e96d5aa8fbb1b7b8e383dd3a64b829_activity.pkl differ diff --git a/backend/instance/sessions/e20684f45cba8ef8c377f660b4ffbead_activity.pkl b/backend/instance/sessions/e20684f45cba8ef8c377f660b4ffbead_activity.pkl new file mode 100644 index 000000000..b5aea7417 Binary files /dev/null and b/backend/instance/sessions/e20684f45cba8ef8c377f660b4ffbead_activity.pkl differ diff --git a/backend/instance/sessions/e22c408205306ed778b3705b9f02f266_activity.pkl b/backend/instance/sessions/e22c408205306ed778b3705b9f02f266_activity.pkl new file mode 100644 index 000000000..937e272a8 Binary files /dev/null and b/backend/instance/sessions/e22c408205306ed778b3705b9f02f266_activity.pkl differ diff --git a/backend/instance/sessions/e22d68cdde48682e527ad4367e04b8cc_activity.pkl b/backend/instance/sessions/e22d68cdde48682e527ad4367e04b8cc_activity.pkl new file mode 100644 index 000000000..fdde677df Binary files /dev/null and b/backend/instance/sessions/e22d68cdde48682e527ad4367e04b8cc_activity.pkl differ diff --git a/backend/instance/sessions/e2fbb9fe8f77ebeaaa41659fabd4c0c0_activity.pkl b/backend/instance/sessions/e2fbb9fe8f77ebeaaa41659fabd4c0c0_activity.pkl new file mode 100644 index 000000000..15a7c60a5 Binary files /dev/null and b/backend/instance/sessions/e2fbb9fe8f77ebeaaa41659fabd4c0c0_activity.pkl differ diff --git a/backend/instance/sessions/e317ee690f9de02c13d516c0b52937d0_activity.pkl b/backend/instance/sessions/e317ee690f9de02c13d516c0b52937d0_activity.pkl new file mode 100644 index 000000000..792700b4c Binary files /dev/null and b/backend/instance/sessions/e317ee690f9de02c13d516c0b52937d0_activity.pkl differ diff --git a/backend/instance/sessions/e31b1bd405f26b124013eb0ece3ebfa0_activity.pkl b/backend/instance/sessions/e31b1bd405f26b124013eb0ece3ebfa0_activity.pkl new file mode 100644 index 000000000..dcfa45522 Binary files /dev/null and b/backend/instance/sessions/e31b1bd405f26b124013eb0ece3ebfa0_activity.pkl differ diff --git a/backend/instance/sessions/e354a2a147bcb2083c42ed7be3d44e8e_activity.pkl b/backend/instance/sessions/e354a2a147bcb2083c42ed7be3d44e8e_activity.pkl new file mode 100644 index 000000000..ee354e14f Binary files /dev/null and b/backend/instance/sessions/e354a2a147bcb2083c42ed7be3d44e8e_activity.pkl differ diff --git a/backend/instance/sessions/e35f4b88a86f9f9dc1fb37c469c746f0_activity.pkl b/backend/instance/sessions/e35f4b88a86f9f9dc1fb37c469c746f0_activity.pkl new file mode 100644 index 000000000..b9f3e8058 Binary files /dev/null and b/backend/instance/sessions/e35f4b88a86f9f9dc1fb37c469c746f0_activity.pkl differ diff --git a/backend/instance/sessions/e3d4e015078036a2cf56e3cd784d21fa_activity.pkl b/backend/instance/sessions/e3d4e015078036a2cf56e3cd784d21fa_activity.pkl new file mode 100644 index 000000000..dd4fd2062 Binary files /dev/null and b/backend/instance/sessions/e3d4e015078036a2cf56e3cd784d21fa_activity.pkl differ diff --git a/backend/instance/sessions/e3e2cd65f1411ce7b5e07dfef00d6ab5_activity.pkl b/backend/instance/sessions/e3e2cd65f1411ce7b5e07dfef00d6ab5_activity.pkl new file mode 100644 index 000000000..8570f81c6 Binary files /dev/null and b/backend/instance/sessions/e3e2cd65f1411ce7b5e07dfef00d6ab5_activity.pkl differ diff --git a/backend/instance/sessions/e40ca5554a4ed715ef7e9a5633992456_activity.pkl b/backend/instance/sessions/e40ca5554a4ed715ef7e9a5633992456_activity.pkl new file mode 100644 index 000000000..fc59bc8a1 Binary files /dev/null and b/backend/instance/sessions/e40ca5554a4ed715ef7e9a5633992456_activity.pkl differ diff --git a/backend/instance/sessions/e559cdc7e1d29eb0ae19ed95b0635ae6_activity.pkl b/backend/instance/sessions/e559cdc7e1d29eb0ae19ed95b0635ae6_activity.pkl new file mode 100644 index 000000000..b07b4e2bf Binary files /dev/null and b/backend/instance/sessions/e559cdc7e1d29eb0ae19ed95b0635ae6_activity.pkl differ diff --git a/backend/instance/sessions/e5b60bc5306e38e3bec64d03707fe952_activity.pkl b/backend/instance/sessions/e5b60bc5306e38e3bec64d03707fe952_activity.pkl new file mode 100644 index 000000000..df594b48c Binary files /dev/null and b/backend/instance/sessions/e5b60bc5306e38e3bec64d03707fe952_activity.pkl differ diff --git a/backend/instance/sessions/e5d89a64eda029e62044051602136bb3_activity.pkl b/backend/instance/sessions/e5d89a64eda029e62044051602136bb3_activity.pkl new file mode 100644 index 000000000..1a41bd04d Binary files /dev/null and b/backend/instance/sessions/e5d89a64eda029e62044051602136bb3_activity.pkl differ diff --git a/backend/instance/sessions/e60bac6279ef4c85e442e666e01c5f73_activity.pkl b/backend/instance/sessions/e60bac6279ef4c85e442e666e01c5f73_activity.pkl new file mode 100644 index 000000000..3fa69e097 Binary files /dev/null and b/backend/instance/sessions/e60bac6279ef4c85e442e666e01c5f73_activity.pkl differ diff --git a/backend/instance/sessions/e62fc9a75f4341c1e7acb75964b06836_activity.pkl b/backend/instance/sessions/e62fc9a75f4341c1e7acb75964b06836_activity.pkl new file mode 100644 index 000000000..e59056563 Binary files /dev/null and b/backend/instance/sessions/e62fc9a75f4341c1e7acb75964b06836_activity.pkl differ diff --git a/backend/instance/sessions/e669a782d364253c10c28e1e1b7cb451_activity.pkl b/backend/instance/sessions/e669a782d364253c10c28e1e1b7cb451_activity.pkl new file mode 100644 index 000000000..d1032c17d Binary files /dev/null and b/backend/instance/sessions/e669a782d364253c10c28e1e1b7cb451_activity.pkl differ diff --git a/backend/instance/sessions/e72ab5d4379a15ade7ed0c72f2dd755a_activity.pkl b/backend/instance/sessions/e72ab5d4379a15ade7ed0c72f2dd755a_activity.pkl new file mode 100644 index 000000000..9ea887a34 Binary files /dev/null and b/backend/instance/sessions/e72ab5d4379a15ade7ed0c72f2dd755a_activity.pkl differ diff --git a/backend/instance/sessions/e7386203519c648dbbbdd23a2bbb30f4_activity.pkl b/backend/instance/sessions/e7386203519c648dbbbdd23a2bbb30f4_activity.pkl new file mode 100644 index 000000000..332049e35 Binary files /dev/null and b/backend/instance/sessions/e7386203519c648dbbbdd23a2bbb30f4_activity.pkl differ diff --git a/backend/instance/sessions/e8039d2413a1384ce1ab4468f86dd065_activity.pkl b/backend/instance/sessions/e8039d2413a1384ce1ab4468f86dd065_activity.pkl new file mode 100644 index 000000000..b274a6920 Binary files /dev/null and b/backend/instance/sessions/e8039d2413a1384ce1ab4468f86dd065_activity.pkl differ diff --git a/backend/instance/sessions/e85bed1b3c346f48df2bf0f5fbe6f8b4_activity.pkl b/backend/instance/sessions/e85bed1b3c346f48df2bf0f5fbe6f8b4_activity.pkl new file mode 100644 index 000000000..1e01e5c6e Binary files /dev/null and b/backend/instance/sessions/e85bed1b3c346f48df2bf0f5fbe6f8b4_activity.pkl differ diff --git a/backend/instance/sessions/e8bd1053ff92566aaa057f9bbaa3628a_activity.pkl b/backend/instance/sessions/e8bd1053ff92566aaa057f9bbaa3628a_activity.pkl new file mode 100644 index 000000000..86512fdaa Binary files /dev/null and b/backend/instance/sessions/e8bd1053ff92566aaa057f9bbaa3628a_activity.pkl differ diff --git a/backend/instance/sessions/e8d0497065efc000f2e67ff9aa35fa2a_activity.pkl b/backend/instance/sessions/e8d0497065efc000f2e67ff9aa35fa2a_activity.pkl new file mode 100644 index 000000000..3e0750c87 Binary files /dev/null and b/backend/instance/sessions/e8d0497065efc000f2e67ff9aa35fa2a_activity.pkl differ diff --git a/backend/instance/sessions/ea11462aac4de7e02906bc1286e1018f_activity.pkl b/backend/instance/sessions/ea11462aac4de7e02906bc1286e1018f_activity.pkl new file mode 100644 index 000000000..b1982ea8d Binary files /dev/null and b/backend/instance/sessions/ea11462aac4de7e02906bc1286e1018f_activity.pkl differ diff --git a/backend/instance/sessions/eabd452733431db91020ad3d7c506db3_activity.pkl b/backend/instance/sessions/eabd452733431db91020ad3d7c506db3_activity.pkl new file mode 100644 index 000000000..380ebc130 Binary files /dev/null and b/backend/instance/sessions/eabd452733431db91020ad3d7c506db3_activity.pkl differ diff --git a/backend/instance/sessions/eaf0a8f02aed58368aa153e9f7bf61ca_activity.pkl b/backend/instance/sessions/eaf0a8f02aed58368aa153e9f7bf61ca_activity.pkl new file mode 100644 index 000000000..b5a8377ba Binary files /dev/null and b/backend/instance/sessions/eaf0a8f02aed58368aa153e9f7bf61ca_activity.pkl differ diff --git a/backend/instance/sessions/eb20cb21f0c886b19c73bfaf2559e24f_activity.pkl b/backend/instance/sessions/eb20cb21f0c886b19c73bfaf2559e24f_activity.pkl new file mode 100644 index 000000000..114c8013b Binary files /dev/null and b/backend/instance/sessions/eb20cb21f0c886b19c73bfaf2559e24f_activity.pkl differ diff --git a/backend/instance/sessions/eb337c835776a31771761f360e11315b_activity.pkl b/backend/instance/sessions/eb337c835776a31771761f360e11315b_activity.pkl new file mode 100644 index 000000000..69cb50b1b Binary files /dev/null and b/backend/instance/sessions/eb337c835776a31771761f360e11315b_activity.pkl differ diff --git a/backend/instance/sessions/eb412599ae8256a601e422d23d93f0e9_activity.pkl b/backend/instance/sessions/eb412599ae8256a601e422d23d93f0e9_activity.pkl new file mode 100644 index 000000000..1c6a55df9 Binary files /dev/null and b/backend/instance/sessions/eb412599ae8256a601e422d23d93f0e9_activity.pkl differ diff --git a/backend/instance/sessions/eb91bda89cb826ce280e62418884a297_activity.pkl b/backend/instance/sessions/eb91bda89cb826ce280e62418884a297_activity.pkl new file mode 100644 index 000000000..9c4950209 Binary files /dev/null and b/backend/instance/sessions/eb91bda89cb826ce280e62418884a297_activity.pkl differ diff --git a/backend/instance/sessions/ec96ede3856475211e8faf8045bb5d6d_activity.pkl b/backend/instance/sessions/ec96ede3856475211e8faf8045bb5d6d_activity.pkl new file mode 100644 index 000000000..747bc3641 Binary files /dev/null and b/backend/instance/sessions/ec96ede3856475211e8faf8045bb5d6d_activity.pkl differ diff --git a/backend/instance/sessions/ece3a0b8c1335945ee64c3e6e2da367f_activity.pkl b/backend/instance/sessions/ece3a0b8c1335945ee64c3e6e2da367f_activity.pkl new file mode 100644 index 000000000..7116a86a4 Binary files /dev/null and b/backend/instance/sessions/ece3a0b8c1335945ee64c3e6e2da367f_activity.pkl differ diff --git a/backend/instance/sessions/ecea03526841232d5e13eab403edeeca_activity.pkl b/backend/instance/sessions/ecea03526841232d5e13eab403edeeca_activity.pkl new file mode 100644 index 000000000..063172daf Binary files /dev/null and b/backend/instance/sessions/ecea03526841232d5e13eab403edeeca_activity.pkl differ diff --git a/backend/instance/sessions/ecec55a76103532664729522723d8575_activity.pkl b/backend/instance/sessions/ecec55a76103532664729522723d8575_activity.pkl new file mode 100644 index 000000000..4c631e7e4 Binary files /dev/null and b/backend/instance/sessions/ecec55a76103532664729522723d8575_activity.pkl differ diff --git a/backend/instance/sessions/edf6aea21f8881e6431816ec3807fea7_activity.pkl b/backend/instance/sessions/edf6aea21f8881e6431816ec3807fea7_activity.pkl new file mode 100644 index 000000000..2a6c47ca8 Binary files /dev/null and b/backend/instance/sessions/edf6aea21f8881e6431816ec3807fea7_activity.pkl differ diff --git a/backend/instance/sessions/edfe1088de82a5e860caf8dfcb8d4df9_activity.pkl b/backend/instance/sessions/edfe1088de82a5e860caf8dfcb8d4df9_activity.pkl new file mode 100644 index 000000000..f061eab8a Binary files /dev/null and b/backend/instance/sessions/edfe1088de82a5e860caf8dfcb8d4df9_activity.pkl differ diff --git a/backend/instance/sessions/ee982befcd8bd399eb705f34314c3908_activity.pkl b/backend/instance/sessions/ee982befcd8bd399eb705f34314c3908_activity.pkl new file mode 100644 index 000000000..9a1778e48 Binary files /dev/null and b/backend/instance/sessions/ee982befcd8bd399eb705f34314c3908_activity.pkl differ diff --git a/backend/instance/sessions/eee801c7b12c0ad00bcb126fc9fe1bc6_activity.pkl b/backend/instance/sessions/eee801c7b12c0ad00bcb126fc9fe1bc6_activity.pkl new file mode 100644 index 000000000..3e0fced77 Binary files /dev/null and b/backend/instance/sessions/eee801c7b12c0ad00bcb126fc9fe1bc6_activity.pkl differ diff --git a/backend/instance/sessions/ef0d23de06529ae6acc614969264ccee_activity.pkl b/backend/instance/sessions/ef0d23de06529ae6acc614969264ccee_activity.pkl new file mode 100644 index 000000000..9f55c66ff Binary files /dev/null and b/backend/instance/sessions/ef0d23de06529ae6acc614969264ccee_activity.pkl differ diff --git a/backend/instance/sessions/efbc056078d935753077da190dad8d53_activity.pkl b/backend/instance/sessions/efbc056078d935753077da190dad8d53_activity.pkl new file mode 100644 index 000000000..391d076cc Binary files /dev/null and b/backend/instance/sessions/efbc056078d935753077da190dad8d53_activity.pkl differ diff --git a/backend/instance/sessions/f00b16e61f1f4f6453f646fdc377d0b5_activity.pkl b/backend/instance/sessions/f00b16e61f1f4f6453f646fdc377d0b5_activity.pkl new file mode 100644 index 000000000..5c92e4c91 Binary files /dev/null and b/backend/instance/sessions/f00b16e61f1f4f6453f646fdc377d0b5_activity.pkl differ diff --git a/backend/instance/sessions/f049701f74e5a6450020f28840f5decb_activity.pkl b/backend/instance/sessions/f049701f74e5a6450020f28840f5decb_activity.pkl new file mode 100644 index 000000000..0db1b54f4 Binary files /dev/null and b/backend/instance/sessions/f049701f74e5a6450020f28840f5decb_activity.pkl differ diff --git a/backend/instance/sessions/f04fa817bab14b69b0f2a1a43fb93240_activity.pkl b/backend/instance/sessions/f04fa817bab14b69b0f2a1a43fb93240_activity.pkl new file mode 100644 index 000000000..3d1490e2b Binary files /dev/null and b/backend/instance/sessions/f04fa817bab14b69b0f2a1a43fb93240_activity.pkl differ diff --git a/backend/instance/sessions/f0673e0937315bea5d30006f3bb28839_activity.pkl b/backend/instance/sessions/f0673e0937315bea5d30006f3bb28839_activity.pkl new file mode 100644 index 000000000..273006b0c Binary files /dev/null and b/backend/instance/sessions/f0673e0937315bea5d30006f3bb28839_activity.pkl differ diff --git a/backend/instance/sessions/f068ddddfd5d89145d3dc33cb13acde2_activity.pkl b/backend/instance/sessions/f068ddddfd5d89145d3dc33cb13acde2_activity.pkl new file mode 100644 index 000000000..ec2f25475 Binary files /dev/null and b/backend/instance/sessions/f068ddddfd5d89145d3dc33cb13acde2_activity.pkl differ diff --git a/backend/instance/sessions/f098e22fe18f5521099d271a19759af7_activity.pkl b/backend/instance/sessions/f098e22fe18f5521099d271a19759af7_activity.pkl new file mode 100644 index 000000000..e58ca7622 Binary files /dev/null and b/backend/instance/sessions/f098e22fe18f5521099d271a19759af7_activity.pkl differ diff --git a/backend/instance/sessions/f0bfd69e97221d98355d5ebe5ac699bb_activity.pkl b/backend/instance/sessions/f0bfd69e97221d98355d5ebe5ac699bb_activity.pkl new file mode 100644 index 000000000..38e724049 Binary files /dev/null and b/backend/instance/sessions/f0bfd69e97221d98355d5ebe5ac699bb_activity.pkl differ diff --git a/backend/instance/sessions/f18064aec8428307d7c07cc0f885011a_activity.pkl b/backend/instance/sessions/f18064aec8428307d7c07cc0f885011a_activity.pkl new file mode 100644 index 000000000..5aa08abbe Binary files /dev/null and b/backend/instance/sessions/f18064aec8428307d7c07cc0f885011a_activity.pkl differ diff --git a/backend/instance/sessions/f18acb4a5abf564ebdcc798c55c12b7c_activity.pkl b/backend/instance/sessions/f18acb4a5abf564ebdcc798c55c12b7c_activity.pkl new file mode 100644 index 000000000..f765a86b4 Binary files /dev/null and b/backend/instance/sessions/f18acb4a5abf564ebdcc798c55c12b7c_activity.pkl differ diff --git a/backend/instance/sessions/f1b8cfc2625326eb0ca4dacc984bbf15_activity.pkl b/backend/instance/sessions/f1b8cfc2625326eb0ca4dacc984bbf15_activity.pkl new file mode 100644 index 000000000..17a12c7ad Binary files /dev/null and b/backend/instance/sessions/f1b8cfc2625326eb0ca4dacc984bbf15_activity.pkl differ diff --git a/backend/instance/sessions/f1d2d3d0ad81548ebbd4579fd801821a_activity.pkl b/backend/instance/sessions/f1d2d3d0ad81548ebbd4579fd801821a_activity.pkl new file mode 100644 index 000000000..28a6152de Binary files /dev/null and b/backend/instance/sessions/f1d2d3d0ad81548ebbd4579fd801821a_activity.pkl differ diff --git a/backend/instance/sessions/f1d3c8d2ac69b072f646f9d79f278d4b_activity.pkl b/backend/instance/sessions/f1d3c8d2ac69b072f646f9d79f278d4b_activity.pkl new file mode 100644 index 000000000..388ec2ec0 Binary files /dev/null and b/backend/instance/sessions/f1d3c8d2ac69b072f646f9d79f278d4b_activity.pkl differ diff --git a/backend/instance/sessions/f21dbd047e4b7d0a3025a5873d29cffa_activity.pkl b/backend/instance/sessions/f21dbd047e4b7d0a3025a5873d29cffa_activity.pkl new file mode 100644 index 000000000..108c5cd1c Binary files /dev/null and b/backend/instance/sessions/f21dbd047e4b7d0a3025a5873d29cffa_activity.pkl differ diff --git a/backend/instance/sessions/f226e90b415babbc4639a00a5e2fdf75_activity.pkl b/backend/instance/sessions/f226e90b415babbc4639a00a5e2fdf75_activity.pkl new file mode 100644 index 000000000..59d4ee6e4 Binary files /dev/null and b/backend/instance/sessions/f226e90b415babbc4639a00a5e2fdf75_activity.pkl differ diff --git a/backend/instance/sessions/f247a1c284eef9ec86240585189754f1_activity.pkl b/backend/instance/sessions/f247a1c284eef9ec86240585189754f1_activity.pkl new file mode 100644 index 000000000..acc8e61e4 Binary files /dev/null and b/backend/instance/sessions/f247a1c284eef9ec86240585189754f1_activity.pkl differ diff --git a/backend/instance/sessions/f2582f756e0da9549910807dd2c0d26e_activity.pkl b/backend/instance/sessions/f2582f756e0da9549910807dd2c0d26e_activity.pkl new file mode 100644 index 000000000..8afe62508 Binary files /dev/null and b/backend/instance/sessions/f2582f756e0da9549910807dd2c0d26e_activity.pkl differ diff --git a/backend/instance/sessions/f2db2b45e148b9bb94921fb99a132474_activity.pkl b/backend/instance/sessions/f2db2b45e148b9bb94921fb99a132474_activity.pkl new file mode 100644 index 000000000..44fbfd8b6 Binary files /dev/null and b/backend/instance/sessions/f2db2b45e148b9bb94921fb99a132474_activity.pkl differ diff --git a/backend/instance/sessions/f3c9e5588bdd9d63b567c8d3098872fc_activity.pkl b/backend/instance/sessions/f3c9e5588bdd9d63b567c8d3098872fc_activity.pkl new file mode 100644 index 000000000..cfc0ee37c Binary files /dev/null and b/backend/instance/sessions/f3c9e5588bdd9d63b567c8d3098872fc_activity.pkl differ diff --git a/backend/instance/sessions/f4d6366ec976fc01c19f960a807c62d0_activity.pkl b/backend/instance/sessions/f4d6366ec976fc01c19f960a807c62d0_activity.pkl new file mode 100644 index 000000000..fc5d53a64 Binary files /dev/null and b/backend/instance/sessions/f4d6366ec976fc01c19f960a807c62d0_activity.pkl differ diff --git a/backend/instance/sessions/f4f38cd649270247fadca9d7a724c7da_activity.pkl b/backend/instance/sessions/f4f38cd649270247fadca9d7a724c7da_activity.pkl new file mode 100644 index 000000000..0cf222510 Binary files /dev/null and b/backend/instance/sessions/f4f38cd649270247fadca9d7a724c7da_activity.pkl differ diff --git a/backend/instance/sessions/f51e9db478a6034f13e7711760487128_activity.pkl b/backend/instance/sessions/f51e9db478a6034f13e7711760487128_activity.pkl new file mode 100644 index 000000000..a8ef33431 Binary files /dev/null and b/backend/instance/sessions/f51e9db478a6034f13e7711760487128_activity.pkl differ diff --git a/backend/instance/sessions/f531e2c75ae6a1e3043fbb19bd441c47_activity.pkl b/backend/instance/sessions/f531e2c75ae6a1e3043fbb19bd441c47_activity.pkl new file mode 100644 index 000000000..1a9c2d46b Binary files /dev/null and b/backend/instance/sessions/f531e2c75ae6a1e3043fbb19bd441c47_activity.pkl differ diff --git a/backend/instance/sessions/f5a96820ad0c4124162663ac7210228a_activity.pkl b/backend/instance/sessions/f5a96820ad0c4124162663ac7210228a_activity.pkl new file mode 100644 index 000000000..863378cef Binary files /dev/null and b/backend/instance/sessions/f5a96820ad0c4124162663ac7210228a_activity.pkl differ diff --git a/backend/instance/sessions/f5b1482b6d7c2582f335cdcaa120601c_activity.pkl b/backend/instance/sessions/f5b1482b6d7c2582f335cdcaa120601c_activity.pkl new file mode 100644 index 000000000..cf779dcf7 Binary files /dev/null and b/backend/instance/sessions/f5b1482b6d7c2582f335cdcaa120601c_activity.pkl differ diff --git a/backend/instance/sessions/f63674517b78563a1250350c1c9a6217_activity.pkl b/backend/instance/sessions/f63674517b78563a1250350c1c9a6217_activity.pkl new file mode 100644 index 000000000..9254bcb85 Binary files /dev/null and b/backend/instance/sessions/f63674517b78563a1250350c1c9a6217_activity.pkl differ diff --git a/backend/instance/sessions/f63bde7174f7ccf080b4ef825cd843ff_activity.pkl b/backend/instance/sessions/f63bde7174f7ccf080b4ef825cd843ff_activity.pkl new file mode 100644 index 000000000..7653fe9f2 Binary files /dev/null and b/backend/instance/sessions/f63bde7174f7ccf080b4ef825cd843ff_activity.pkl differ diff --git a/backend/instance/sessions/f68bed3566f93b7d02dd75b24a624249_activity.pkl b/backend/instance/sessions/f68bed3566f93b7d02dd75b24a624249_activity.pkl new file mode 100644 index 000000000..fbc798097 Binary files /dev/null and b/backend/instance/sessions/f68bed3566f93b7d02dd75b24a624249_activity.pkl differ diff --git a/backend/instance/sessions/f746713f0cab42e9e55b359a44c4679a_activity.pkl b/backend/instance/sessions/f746713f0cab42e9e55b359a44c4679a_activity.pkl new file mode 100644 index 000000000..d6be37d98 Binary files /dev/null and b/backend/instance/sessions/f746713f0cab42e9e55b359a44c4679a_activity.pkl differ diff --git a/backend/instance/sessions/f7543ebaef2fbcb515fa2b71266c63ee_activity.pkl b/backend/instance/sessions/f7543ebaef2fbcb515fa2b71266c63ee_activity.pkl new file mode 100644 index 000000000..2d966df3b Binary files /dev/null and b/backend/instance/sessions/f7543ebaef2fbcb515fa2b71266c63ee_activity.pkl differ diff --git a/backend/instance/sessions/f7743683ddd4af2da19ee19bdcf592e0_activity.pkl b/backend/instance/sessions/f7743683ddd4af2da19ee19bdcf592e0_activity.pkl new file mode 100644 index 000000000..3213ef829 Binary files /dev/null and b/backend/instance/sessions/f7743683ddd4af2da19ee19bdcf592e0_activity.pkl differ diff --git a/backend/instance/sessions/f7779be3fca6dbd109e34ca6ad2b006a_activity.pkl b/backend/instance/sessions/f7779be3fca6dbd109e34ca6ad2b006a_activity.pkl new file mode 100644 index 000000000..4b36f371e Binary files /dev/null and b/backend/instance/sessions/f7779be3fca6dbd109e34ca6ad2b006a_activity.pkl differ diff --git a/backend/instance/sessions/f7fb58cc07fb879cd6f9fb8f2102887d_activity.pkl b/backend/instance/sessions/f7fb58cc07fb879cd6f9fb8f2102887d_activity.pkl new file mode 100644 index 000000000..0486fa6ef Binary files /dev/null and b/backend/instance/sessions/f7fb58cc07fb879cd6f9fb8f2102887d_activity.pkl differ diff --git a/backend/instance/sessions/f8e931e1cc7eac80a872ff9f0c5a8990_activity.pkl b/backend/instance/sessions/f8e931e1cc7eac80a872ff9f0c5a8990_activity.pkl new file mode 100644 index 000000000..9a33262e2 Binary files /dev/null and b/backend/instance/sessions/f8e931e1cc7eac80a872ff9f0c5a8990_activity.pkl differ diff --git a/backend/instance/sessions/f9c54fc31f2a61f96edddfd1140b5505_activity.pkl b/backend/instance/sessions/f9c54fc31f2a61f96edddfd1140b5505_activity.pkl new file mode 100644 index 000000000..562dce02a Binary files /dev/null and b/backend/instance/sessions/f9c54fc31f2a61f96edddfd1140b5505_activity.pkl differ diff --git a/backend/instance/sessions/f9d77ca849ab7815be6204286c943816_activity.pkl b/backend/instance/sessions/f9d77ca849ab7815be6204286c943816_activity.pkl new file mode 100644 index 000000000..5d034396e Binary files /dev/null and b/backend/instance/sessions/f9d77ca849ab7815be6204286c943816_activity.pkl differ diff --git a/backend/instance/sessions/fa108c1d23273f0980522101456ab214_activity.pkl b/backend/instance/sessions/fa108c1d23273f0980522101456ab214_activity.pkl new file mode 100644 index 000000000..23b1da026 Binary files /dev/null and b/backend/instance/sessions/fa108c1d23273f0980522101456ab214_activity.pkl differ diff --git a/backend/instance/sessions/fa5eb2f47c603679126830a21ece0084_activity.pkl b/backend/instance/sessions/fa5eb2f47c603679126830a21ece0084_activity.pkl new file mode 100644 index 000000000..a081f5357 Binary files /dev/null and b/backend/instance/sessions/fa5eb2f47c603679126830a21ece0084_activity.pkl differ diff --git a/backend/instance/sessions/fa7759fbc10936314002f830f10f0026_activity.pkl b/backend/instance/sessions/fa7759fbc10936314002f830f10f0026_activity.pkl new file mode 100644 index 000000000..172c1666d Binary files /dev/null and b/backend/instance/sessions/fa7759fbc10936314002f830f10f0026_activity.pkl differ diff --git a/backend/instance/sessions/fa96af15257418b2bfbdb36b1e14f253_activity.pkl b/backend/instance/sessions/fa96af15257418b2bfbdb36b1e14f253_activity.pkl new file mode 100644 index 000000000..3113a4f1f Binary files /dev/null and b/backend/instance/sessions/fa96af15257418b2bfbdb36b1e14f253_activity.pkl differ diff --git a/backend/instance/sessions/fa97d6a73a19486082b59380b405a3f2_activity.pkl b/backend/instance/sessions/fa97d6a73a19486082b59380b405a3f2_activity.pkl new file mode 100644 index 000000000..4eb5f09ab Binary files /dev/null and b/backend/instance/sessions/fa97d6a73a19486082b59380b405a3f2_activity.pkl differ diff --git a/backend/instance/sessions/faabee0c4972a298cca8f545326edb84_activity.pkl b/backend/instance/sessions/faabee0c4972a298cca8f545326edb84_activity.pkl new file mode 100644 index 000000000..dd2c39d7e Binary files /dev/null and b/backend/instance/sessions/faabee0c4972a298cca8f545326edb84_activity.pkl differ diff --git a/backend/instance/sessions/fae28787a815eda9c3b3dbda8c558f46_activity.pkl b/backend/instance/sessions/fae28787a815eda9c3b3dbda8c558f46_activity.pkl new file mode 100644 index 000000000..72033cab5 Binary files /dev/null and b/backend/instance/sessions/fae28787a815eda9c3b3dbda8c558f46_activity.pkl differ diff --git a/backend/instance/sessions/fb2fdb2153b4f752b23ec3eb40165bfc_activity.pkl b/backend/instance/sessions/fb2fdb2153b4f752b23ec3eb40165bfc_activity.pkl new file mode 100644 index 000000000..b99db1463 Binary files /dev/null and b/backend/instance/sessions/fb2fdb2153b4f752b23ec3eb40165bfc_activity.pkl differ diff --git a/backend/instance/sessions/fba4d168589cba62427e6a128243ea09_activity.pkl b/backend/instance/sessions/fba4d168589cba62427e6a128243ea09_activity.pkl new file mode 100644 index 000000000..fcb46d73f Binary files /dev/null and b/backend/instance/sessions/fba4d168589cba62427e6a128243ea09_activity.pkl differ diff --git a/backend/instance/sessions/fbff31895f8394500252a128e4190061_activity.pkl b/backend/instance/sessions/fbff31895f8394500252a128e4190061_activity.pkl new file mode 100644 index 000000000..a5bb91316 Binary files /dev/null and b/backend/instance/sessions/fbff31895f8394500252a128e4190061_activity.pkl differ diff --git a/backend/instance/sessions/fc1bc99399d08f5820222508ca4d7ae6_activity.pkl b/backend/instance/sessions/fc1bc99399d08f5820222508ca4d7ae6_activity.pkl new file mode 100644 index 000000000..5dc846f30 Binary files /dev/null and b/backend/instance/sessions/fc1bc99399d08f5820222508ca4d7ae6_activity.pkl differ diff --git a/backend/instance/sessions/fc6c6c0edeb777b1b0dee4db96b9b32e_activity.pkl b/backend/instance/sessions/fc6c6c0edeb777b1b0dee4db96b9b32e_activity.pkl new file mode 100644 index 000000000..e88e576fe Binary files /dev/null and b/backend/instance/sessions/fc6c6c0edeb777b1b0dee4db96b9b32e_activity.pkl differ diff --git a/backend/instance/sessions/fcc527e83b2cbe105c85ad5d03d64854_activity.pkl b/backend/instance/sessions/fcc527e83b2cbe105c85ad5d03d64854_activity.pkl new file mode 100644 index 000000000..65b725ae9 Binary files /dev/null and b/backend/instance/sessions/fcc527e83b2cbe105c85ad5d03d64854_activity.pkl differ diff --git a/backend/instance/sessions/fcf767144e95855a2333c0257a6119fc_activity.pkl b/backend/instance/sessions/fcf767144e95855a2333c0257a6119fc_activity.pkl new file mode 100644 index 000000000..cb22913f7 Binary files /dev/null and b/backend/instance/sessions/fcf767144e95855a2333c0257a6119fc_activity.pkl differ diff --git a/backend/instance/sessions/fd19f014af2c381a3fc5b09f9fdeb7b5_activity.pkl b/backend/instance/sessions/fd19f014af2c381a3fc5b09f9fdeb7b5_activity.pkl new file mode 100644 index 000000000..a566b717a Binary files /dev/null and b/backend/instance/sessions/fd19f014af2c381a3fc5b09f9fdeb7b5_activity.pkl differ diff --git a/backend/instance/sessions/fd731686fcbf775c2fe0592fe1c39db0_activity.pkl b/backend/instance/sessions/fd731686fcbf775c2fe0592fe1c39db0_activity.pkl new file mode 100644 index 000000000..f84fe1187 Binary files /dev/null and b/backend/instance/sessions/fd731686fcbf775c2fe0592fe1c39db0_activity.pkl differ diff --git a/backend/instance/sessions/fd7844d28ae98062fe8c32f89dc6e3ca_activity.pkl b/backend/instance/sessions/fd7844d28ae98062fe8c32f89dc6e3ca_activity.pkl new file mode 100644 index 000000000..3859dca54 Binary files /dev/null and b/backend/instance/sessions/fd7844d28ae98062fe8c32f89dc6e3ca_activity.pkl differ diff --git a/backend/instance/sessions/fd96a03d80217ea62fc5d4673e913215_activity.pkl b/backend/instance/sessions/fd96a03d80217ea62fc5d4673e913215_activity.pkl new file mode 100644 index 000000000..13ff023f4 Binary files /dev/null and b/backend/instance/sessions/fd96a03d80217ea62fc5d4673e913215_activity.pkl differ diff --git a/backend/instance/sessions/fdeb72bc2c8e19ee4147dc2abc4e2ec7_activity.pkl b/backend/instance/sessions/fdeb72bc2c8e19ee4147dc2abc4e2ec7_activity.pkl new file mode 100644 index 000000000..44ee6e057 Binary files /dev/null and b/backend/instance/sessions/fdeb72bc2c8e19ee4147dc2abc4e2ec7_activity.pkl differ diff --git a/backend/instance/sessions/fe06d970ea9935a8f6fdd983bab60b34_activity.pkl b/backend/instance/sessions/fe06d970ea9935a8f6fdd983bab60b34_activity.pkl new file mode 100644 index 000000000..2eacc4865 Binary files /dev/null and b/backend/instance/sessions/fe06d970ea9935a8f6fdd983bab60b34_activity.pkl differ diff --git a/backend/instance/sessions/fe09a24fee755ccd783f54d3088af205_activity.pkl b/backend/instance/sessions/fe09a24fee755ccd783f54d3088af205_activity.pkl new file mode 100644 index 000000000..9f35bd405 Binary files /dev/null and b/backend/instance/sessions/fe09a24fee755ccd783f54d3088af205_activity.pkl differ diff --git a/backend/instance/sessions/fe6f8de1f01377174872a1cb7a61b5c0_activity.pkl b/backend/instance/sessions/fe6f8de1f01377174872a1cb7a61b5c0_activity.pkl new file mode 100644 index 000000000..43c846b2e Binary files /dev/null and b/backend/instance/sessions/fe6f8de1f01377174872a1cb7a61b5c0_activity.pkl differ diff --git a/backend/instance/sessions/fee24a33491db11da050b67537fb6187_activity.pkl b/backend/instance/sessions/fee24a33491db11da050b67537fb6187_activity.pkl new file mode 100644 index 000000000..7260d3c2f Binary files /dev/null and b/backend/instance/sessions/fee24a33491db11da050b67537fb6187_activity.pkl differ diff --git a/backend/instance/sessions/fee427dcdf3e8aecc5f6757d9038cc69_activity.pkl b/backend/instance/sessions/fee427dcdf3e8aecc5f6757d9038cc69_activity.pkl new file mode 100644 index 000000000..d5f90358f Binary files /dev/null and b/backend/instance/sessions/fee427dcdf3e8aecc5f6757d9038cc69_activity.pkl differ diff --git a/backend/instance/sessions/ff9730d2789bf36664076806a67356f0_activity.pkl b/backend/instance/sessions/ff9730d2789bf36664076806a67356f0_activity.pkl new file mode 100644 index 000000000..2b9cb8d5e Binary files /dev/null and b/backend/instance/sessions/ff9730d2789bf36664076806a67356f0_activity.pkl differ diff --git a/backend/logs/admin/admin.log b/backend/logs/admin/admin.log index 78ebdceb2..c7f9645ff 100644 --- a/backend/logs/admin/admin.log +++ b/backend/logs/admin/admin.log @@ -1438,3 +1438,141 @@ ^^^^^^^^^^^^^^^^^^^^^^^ jinja2.exceptions.UndefinedError: 'maintenance_info' is undefined +2025-06-20 00:45:54 - [admin] admin - [INFO] INFO - Admin-Check für Funktion admin_dashboard: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:45:54 - [admin] admin - [INFO] INFO - Admin-Dashboard geladen von admin +2025-06-20 00:45:55 - [admin] admin - [ERROR] ERROR - Fehler beim Laden des Admin-Dashboards: 'dict object' has no attribute 'online_printers' +2025-06-20 00:45:55 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:45:55 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:45:56 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:45:59 - [admin] admin - [INFO] INFO - Admin-Check für Funktion admin_dashboard: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:45:59 - [admin] admin - [INFO] INFO - Admin-Dashboard geladen von admin +2025-06-20 00:45:59 - [admin] admin - [ERROR] ERROR - Fehler beim Laden des Admin-Dashboards: 'dict object' has no attribute 'online_printers' +2025-06-20 00:45:59 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:45:59 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:46:00 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:46:01 - [admin] admin - [INFO] INFO - Admin-Check für Funktion users_overview: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:46:01 - [admin] admin - [INFO] INFO - Benutzerübersicht geladen von admin +2025-06-20 00:46:01 - [admin] admin - [ERROR] ERROR - Fehler beim Laden der Benutzerübersicht: 'dict object' has no attribute 'online_printers' +2025-06-20 00:46:01 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:46:01 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:46:02 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:46:24 - [admin] admin - [INFO] INFO - Admin-Check für Funktion users_overview: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:46:24 - [admin] admin - [INFO] INFO - Benutzerübersicht geladen von admin +2025-06-20 00:46:24 - [admin] admin - [ERROR] ERROR - Fehler beim Laden der Benutzerübersicht: 'dict object' has no attribute 'online_printers' +2025-06-20 00:46:24 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:46:24 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:46:25 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:46:54 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:46:54 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:46:54 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_error_recovery_status: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:46:55 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:47:34 - [admin] admin - [INFO] INFO - Admin-Check für Funktion admin_dashboard: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:47:34 - [admin] admin - [INFO] INFO - Admin-Dashboard geladen von admin +2025-06-20 00:47:34 - [admin] admin - [ERROR] ERROR - Fehler beim Laden des Admin-Dashboards: 'dict object' has no attribute 'online_printers' +2025-06-20 00:47:34 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:47:34 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:47:35 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:47:37 - [admin] admin - [INFO] INFO - Admin-Check für Funktion guest_otps_management: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:47:37 - [admin] admin - [INFO] INFO - Gast-OTP-Verwaltung aufgerufen von Admin Administrator +2025-06-20 00:47:37 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_pending_guest_otps_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:47:37 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_guest_requests_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:47:37 - [admin] admin - [INFO] INFO - Aktive OTP-Codes abgerufen: 0 Codes +2025-06-20 00:47:37 - [admin] admin - [INFO] INFO - Gastanfragen abgerufen: 0 Einträge für Admin Administrator +2025-06-20 00:47:39 - [admin] admin - [INFO] INFO - Admin-Check für Funktion tapo_monitoring: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:47:39 - [admin] admin - [INFO] INFO - Tapo-Monitoring aufgerufen von admin +2025-06-20 00:47:52 - [admin] admin - [INFO] INFO - Tapo-Monitoring geladen: 6 Steckdosen, 0 online +2025-06-20 00:48:22 - [admin] admin - [INFO] INFO - Admin-Check für Funktion tapo_monitoring: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:48:22 - [admin] admin - [INFO] INFO - Tapo-Monitoring aufgerufen von admin +2025-06-20 00:48:35 - [admin] admin - [INFO] INFO - Tapo-Monitoring geladen: 6 Steckdosen, 0 online +2025-06-20 00:49:05 - [admin] admin - [INFO] INFO - Admin-Check für Funktion tapo_monitoring: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:49:05 - [admin] admin - [INFO] INFO - Tapo-Monitoring aufgerufen von admin +2025-06-20 00:49:18 - [admin] admin - [INFO] INFO - Admin-Check für Funktion tapo_monitoring: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:49:18 - [admin] admin - [INFO] INFO - Tapo-Monitoring aufgerufen von admin +2025-06-20 00:49:31 - [admin] admin - [INFO] INFO - Tapo-Monitoring geladen: 6 Steckdosen, 0 online +2025-06-20 00:49:54 - [admin] admin - [INFO] INFO - Admin-Check für Funktion admin_dashboard: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:49:54 - [admin] admin - [INFO] INFO - Admin-Dashboard geladen von admin +2025-06-20 00:49:54 - [admin] admin - [ERROR] ERROR - Fehler beim Laden des Admin-Dashboards: 'dict object' has no attribute 'online_printers' +2025-06-20 00:49:54 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:49:54 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:49:55 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:54:58 - [admin] admin - [INFO] INFO - Admin-Check für Funktion admin_dashboard: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:54:58 - [admin] admin - [INFO] INFO - Admin-Dashboard geladen von admin +2025-06-20 00:54:58 - [admin] admin - [ERROR] ERROR - Fehler beim Laden des Admin-Dashboards: 'dict object' has no attribute 'online_printers' +2025-06-20 00:54:59 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:54:59 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:55:00 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:55:00 - [admin] admin - [INFO] INFO - Admin-Check für Funktion guest_otps_management: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:55:00 - [admin] admin - [INFO] INFO - Gast-OTP-Verwaltung aufgerufen von Admin Administrator +2025-06-20 00:55:01 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_pending_guest_otps_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:55:01 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_guest_requests_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:55:01 - [admin] admin - [INFO] INFO - Gastanfragen abgerufen: 0 Einträge für Admin Administrator +2025-06-20 00:55:01 - [admin] admin - [INFO] INFO - Aktive OTP-Codes abgerufen: 0 Codes +2025-06-20 00:55:04 - [admin] admin - [INFO] INFO - Admin-Check für Funktion tapo_monitoring: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:55:04 - [admin] admin - [INFO] INFO - Tapo-Monitoring aufgerufen von admin +2025-06-20 00:55:17 - [admin] admin - [INFO] INFO - Tapo-Monitoring geladen: 6 Steckdosen, 0 online +2025-06-20 00:55:47 - [admin] admin - [INFO] INFO - Admin-Check für Funktion tapo_monitoring: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:55:47 - [admin] admin - [INFO] INFO - Tapo-Monitoring aufgerufen von admin +2025-06-20 00:56:00 - [admin] admin - [INFO] INFO - Tapo-Monitoring geladen: 6 Steckdosen, 0 online +2025-06-20 00:56:30 - [admin] admin - [INFO] INFO - Admin-Check für Funktion tapo_monitoring: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:56:30 - [admin] admin - [INFO] INFO - Tapo-Monitoring aufgerufen von admin +2025-06-20 00:56:43 - [admin] admin - [INFO] INFO - Tapo-Monitoring geladen: 6 Steckdosen, 0 online +2025-06-20 00:56:58 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_bulk_tapo_control: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:57:00 - [admin] admin - [INFO] INFO - Admin-Check für Funktion tapo_monitoring: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:57:00 - [admin] admin - [INFO] INFO - Tapo-Monitoring aufgerufen von admin +2025-06-20 00:57:04 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_tapo_health_check: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:57:13 - [admin] admin - [INFO] INFO - Tapo-Monitoring geladen: 6 Steckdosen, 0 online +2025-06-20 00:57:43 - [admin] admin - [INFO] INFO - Admin-Check für Funktion tapo_monitoring: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:57:43 - [admin] admin - [INFO] INFO - Tapo-Monitoring aufgerufen von admin +2025-06-20 00:57:47 - [admin] admin - [INFO] INFO - Admin-Check für Funktion tapo_monitoring: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:57:47 - [admin] admin - [INFO] INFO - Tapo-Monitoring aufgerufen von admin +2025-06-20 00:57:47 - [admin] admin - [INFO] INFO - Admin-Check für Funktion admin_dashboard: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:57:47 - [admin] admin - [INFO] INFO - Admin-Dashboard geladen von admin +2025-06-20 00:57:48 - [admin] admin - [ERROR] ERROR - Fehler beim Laden des Admin-Dashboards: 'dict object' has no attribute 'online_printers' +2025-06-20 00:57:48 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:57:48 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:57:49 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:57:50 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:57:51 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:57:59 - [admin] admin - [INFO] INFO - Admin-Check für Funktion advanced_settings: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:57:59 - [admin] admin - [INFO] INFO - Erweiterte Einstellungen werden geladen von admin +2025-06-20 00:57:59 - [admin] admin - [INFO] INFO - Template wird gerendert mit stats: {'total_users': 3, 'total_printers': 6, 'active_printers': 0, 'total_jobs': 0, 'pending_jobs': 0} +2025-06-20 00:58:00 - [admin] admin - [INFO] INFO - Tapo-Monitoring geladen: 6 Steckdosen, 0 online +2025-06-20 00:58:25 - [admin] admin - [INFO] INFO - Admin-Check für Funktion guest_otps_management: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:25 - [admin] admin - [INFO] INFO - Gast-OTP-Verwaltung aufgerufen von Admin Administrator +2025-06-20 00:58:25 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_pending_guest_otps_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:25 - [admin] admin - [INFO] INFO - Aktive OTP-Codes abgerufen: 0 Codes +2025-06-20 00:58:25 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_guest_requests_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:25 - [admin] admin - [INFO] INFO - Gastanfragen abgerufen: 0 Einträge für Admin Administrator +2025-06-20 00:58:31 - [admin] admin - [INFO] INFO - Admin-Check für Funktion users_overview: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:31 - [admin] admin - [INFO] INFO - Benutzerübersicht geladen von admin +2025-06-20 00:58:31 - [admin] admin - [ERROR] ERROR - Fehler beim Laden der Benutzerübersicht: 'dict object' has no attribute 'online_printers' +2025-06-20 00:58:32 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:32 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:33 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:58:44 - [admin] admin - [INFO] INFO - Admin-Check für Funktion create_user_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:51 - [admin] admin - [INFO] INFO - Admin-Check für Funktion create_user_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:51 - [admin] admin - [INFO] INFO - Neuer Benutzer erstellt: admin@example.com2 von Admin admin +2025-06-20 00:58:52 - [admin] admin - [INFO] INFO - Admin-Check für Funktion users_overview: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:52 - [admin] admin - [INFO] INFO - Benutzerübersicht geladen von admin +2025-06-20 00:58:52 - [admin] admin - [ERROR] ERROR - Fehler beim Laden der Benutzerübersicht: 'dict object' has no attribute 'online_printers' +2025-06-20 00:58:52 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:53 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:54 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:58:56 - [admin] admin - [INFO] INFO - Admin-Check für Funktion users_overview: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:56 - [admin] admin - [INFO] INFO - Benutzerübersicht geladen von admin +2025-06-20 00:58:56 - [admin] admin - [ERROR] ERROR - Fehler beim Laden der Benutzerübersicht: 'dict object' has no attribute 'online_printers' +2025-06-20 00:58:57 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:57 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:58:58 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:59:27 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:59:27 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:59:27 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_error_recovery_status: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:59:28 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 00:59:57 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_error_recovery_status: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:59:57 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:59:57 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 00:59:58 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin +2025-06-20 01:00:27 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_error_recovery_status: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 01:00:27 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_live_stats: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 01:00:27 - [admin] admin - [INFO] INFO - Admin-Check für Funktion get_system_status_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-20 01:00:28 - [admin] admin - [INFO] INFO - System-Status abgerufen von admin diff --git a/backend/logs/admin_api/admin_api.log b/backend/logs/admin_api/admin_api.log index e7eb2e204..0ec6fc42d 100644 --- a/backend/logs/admin_api/admin_api.log +++ b/backend/logs/admin_api/admin_api.log @@ -561,3 +561,41 @@ 2025-06-20 00:31:52 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin 2025-06-20 00:32:10 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin 2025-06-20 00:32:33 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:45:55 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:45:59 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:46:01 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:46:24 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:46:54 - [admin_api] admin_api - [INFO] INFO - Error-Recovery-Status angefordert von admin +2025-06-20 00:46:54 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:46:55 - [admin_api] admin_api - [ERROR] ERROR - Datenbank-Health-Check für Error-Recovery fehlgeschlagen: Textual SQL expression 'SELECT 1' should be explicitly declared as text('SELECT 1') +2025-06-20 00:46:55 - [admin_api] admin_api - [INFO] INFO - Error-Recovery-Status abgerufen: critical +2025-06-20 00:47:34 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:49:54 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:54:59 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:56:58 - [admin_api] admin_api - [INFO] INFO - Bulk-Tapo-Steuerung von admin +2025-06-20 00:56:58 - [admin_api] admin_api - [ERROR] ERROR - Fehler bei Bulk-Steuerung für Drucker 3: 'DruckerSteuerung' object has no attribute 'toggle_plug' +2025-06-20 00:56:58 - [admin_api] admin_api - [INFO] INFO - Bulk-Tapo-Steuerung abgeschlossen: 0 erfolgreich, 1 Fehler +2025-06-20 00:57:04 - [admin_api] admin_api - [INFO] INFO - Tapo-Gesundheitscheck von admin +2025-06-20 00:57:04 - [admin_api] admin_api - [ERROR] ERROR - Fehler beim Gesundheitscheck für Drucker 1: 'DruckerSteuerung' object has no attribute 'ping_address' +2025-06-20 00:57:04 - [admin_api] admin_api - [ERROR] ERROR - Fehler beim Gesundheitscheck für Drucker 2: 'DruckerSteuerung' object has no attribute 'ping_address' +2025-06-20 00:57:04 - [admin_api] admin_api - [ERROR] ERROR - Fehler beim Gesundheitscheck für Drucker 3: 'DruckerSteuerung' object has no attribute 'ping_address' +2025-06-20 00:57:04 - [admin_api] admin_api - [ERROR] ERROR - Fehler beim Gesundheitscheck für Drucker 4: 'DruckerSteuerung' object has no attribute 'ping_address' +2025-06-20 00:57:04 - [admin_api] admin_api - [ERROR] ERROR - Fehler beim Gesundheitscheck für Drucker 5: 'DruckerSteuerung' object has no attribute 'ping_address' +2025-06-20 00:57:04 - [admin_api] admin_api - [ERROR] ERROR - Fehler beim Gesundheitscheck für Drucker 6: 'DruckerSteuerung' object has no attribute 'ping_address' +2025-06-20 00:57:04 - [admin_api] admin_api - [INFO] INFO - Tapo-Gesundheitscheck abgeschlossen: {'total': 6, 'healthy': 0, 'warning': 0, 'critical': 6} +2025-06-20 00:57:48 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:58:32 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:58:52 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:58:57 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:59:27 - [admin_api] admin_api - [INFO] INFO - Error-Recovery-Status angefordert von admin +2025-06-20 00:59:27 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:59:28 - [admin_api] admin_api - [ERROR] ERROR - Datenbank-Health-Check für Error-Recovery fehlgeschlagen: Textual SQL expression 'SELECT 1' should be explicitly declared as text('SELECT 1') +2025-06-20 00:59:28 - [admin_api] admin_api - [INFO] INFO - Error-Recovery-Status abgerufen: critical +2025-06-20 00:59:57 - [admin_api] admin_api - [INFO] INFO - Error-Recovery-Status angefordert von admin +2025-06-20 00:59:57 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 00:59:58 - [admin_api] admin_api - [ERROR] ERROR - Datenbank-Health-Check für Error-Recovery fehlgeschlagen: Textual SQL expression 'SELECT 1' should be explicitly declared as text('SELECT 1') +2025-06-20 00:59:58 - [admin_api] admin_api - [INFO] INFO - Error-Recovery-Status abgerufen: critical +2025-06-20 01:00:27 - [admin_api] admin_api - [INFO] INFO - Error-Recovery-Status angefordert von admin +2025-06-20 01:00:27 - [admin_api] admin_api - [INFO] INFO - Live-Statistiken abgerufen von Admin admin +2025-06-20 01:00:28 - [admin_api] admin_api - [ERROR] ERROR - Datenbank-Health-Check für Error-Recovery fehlgeschlagen: Textual SQL expression 'SELECT 1' should be explicitly declared as text('SELECT 1') +2025-06-20 01:00:28 - [admin_api] admin_api - [INFO] INFO - Error-Recovery-Status abgerufen: critical diff --git a/backend/logs/app/app.log b/backend/logs/app/app.log index 10c7b7911..cac9c4e24 100644 --- a/backend/logs/app/app.log +++ b/backend/logs/app/app.log @@ -54998,3 +54998,1377 @@ WHERE users.role = ?] 2025-06-20 00:35:48 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... 2025-06-20 00:35:48 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet 2025-06-20 00:35:48 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://: +2025-06-20 00:44:54 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: +2025-06-20 00:44:55 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 00:44:55 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP -Umgebung +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] 🏢 +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-20 00:44:55 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-20 00:44:55 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-20 00:44:55 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-20 00:44:55 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-20 00:44:55 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-20 00:44:55 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-20 00:44:55 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-20 00:44:55 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-20 00:44:55 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-20 00:44:55 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-20 00:44:55 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://: +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-20 00:44:55 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-20 00:44:55 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: +2025-06-20 00:45:01 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 1, Status: disconnected, Quelle: system +2025-06-20 00:45:03 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 2, Status: disconnected, Quelle: system +2025-06-20 00:45:05 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 3, Status: disconnected, Quelle: system +2025-06-20 00:45:07 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 4, Status: disconnected, Quelle: system +2025-06-20 00:45:09 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 5, Status: disconnected, Quelle: system +2025-06-20 00:45:11 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 6, Status: disconnected, Quelle: system +2025-06-20 00:45:11 - [app] app - [INFO] INFO - Locating template 'printers.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/printers.html') +2025-06-20 00:45:11 - [app] app - [INFO] INFO - Locating template 'base.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html') +2025-06-20 00:45:11 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:12 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:12 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:42 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:42 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:47 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:47 - [app] app - [INFO] INFO - Locating template 'calendar.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/calendar.html') +2025-06-20 00:45:47 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:48 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:48 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:48 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:48 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:48 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:48 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:48 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:48 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:50 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:50 - [app] app - [INFO] INFO - Locating template 'energy_dashboard.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/energy_dashboard.html') +2025-06-20 00:45:50 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:50 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:50 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:50 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:50 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:52 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:52 - [app] app - [INFO] INFO - Locating template 'stats.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/stats.html') +2025-06-20 00:45:52 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:52 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:52 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:53 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:53 - [app] app - [INFO] INFO - Locating template 'guest_request.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/guest_request.html') +2025-06-20 00:45:53 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:53 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:53 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:54 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:54 - [app] app - [INFO] INFO - Locating template 'admin.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin.html') +2025-06-20 00:45:55 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:55 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:55 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:55 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:55 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:55 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:56 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:57 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:57 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:59 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:59 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:59 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:59 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:45:59 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:59 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:45:59 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:00 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:01 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:01 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:01 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:01 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:01 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:01 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:01 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:02 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:16 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:16 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:16 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:16 - [app] app - [INFO] INFO - Locating template 'login.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/login.html') +2025-06-20 00:46:16 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:24 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:24 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:24 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:25 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:38 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 00:46:38 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 00:46:54 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:54 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:54 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:54 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:54 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:54 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:55 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:55 - [app] app - [ERROR] ERROR - Datenbank-Transaktion fehlgeschlagen: Textual SQL expression 'SELECT 1' should be explicitly declared as text('SELECT 1') +2025-06-20 00:46:55 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:58 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:58 - [app] app - [INFO] INFO - Locating template 'imprint.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/imprint.html') +2025-06-20 00:46:58 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:46:58 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:46:58 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:15 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:15 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:16 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:16 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:16 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:16 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:16 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:16 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:18 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:18 - [app] app - [INFO] INFO - Locating template 'jobs.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/jobs.html') +2025-06-20 00:47:18 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:19 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:19 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:19 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:19 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:19 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:19 - [app] app - [INFO] INFO - ✅ API: Drucker abgerufen (include_inactive=) +2025-06-20 00:47:19 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:20 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:21 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:21 - [app] app - [INFO] INFO - Locating template 'dashboard.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/dashboard.html') +2025-06-20 00:47:21 - [app] app - [INFO] INFO - Locating template 'macros/ui_components.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/macros/ui_components.html') +2025-06-20 00:47:21 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:22 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:22 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:22 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 1, Status: disconnected, Quelle: system +2025-06-20 00:47:22 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:47:24 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 2, Status: disconnected, Quelle: system +2025-06-20 00:47:24 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:47:25 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:25 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:25 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:25 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:26 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 3, Status: disconnected, Quelle: system +2025-06-20 00:47:26 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:47:28 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:28 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:28 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:28 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:28 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 4, Status: disconnected, Quelle: system +2025-06-20 00:47:28 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:47:30 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 5, Status: disconnected, Quelle: system +2025-06-20 00:47:30 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:47:33 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 6, Status: disconnected, Quelle: system +2025-06-20 00:47:33 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:47:33 - [app] app - [DEBUG] DEBUG - ✅ Status-Updates für Drucker erfolgreich gespeichert +2025-06-20 00:47:33 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:34 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:34 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:34 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:34 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:34 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:34 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:34 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:35 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:37 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:37 - [app] app - [INFO] INFO - Locating template 'admin_guest_otps.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_guest_otps.html') +2025-06-20 00:47:37 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:37 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:37 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:37 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:37 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:37 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:37 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:39 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:52 - [app] app - [INFO] INFO - Locating template 'admin_tapo_monitoring.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_tapo_monitoring.html') +2025-06-20 00:47:52 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:47:52 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:47:52 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:48:22 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:48:35 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:48:35 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:48:35 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:05 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:15 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-20 00:49:15 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-20 00:49:15 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: +2025-06-20 00:49:16 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: +2025-06-20 00:49:17 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 00:49:17 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP -Umgebung +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [STARTUP] 🏢 +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-20 00:49:17 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-20 00:49:17 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-20 00:49:18 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-20 00:49:18 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-20 00:49:18 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-20 00:49:18 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-20 00:49:18 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-20 00:49:18 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-20 00:49:18 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-20 00:49:18 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-20 00:49:18 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-20 00:49:18 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-20 00:49:18 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-20 00:49:18 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-20 00:49:18 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-20 00:49:18 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-20 00:49:18 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-20 00:49:18 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-20 00:49:18 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-20 00:49:18 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://: +2025-06-20 00:49:31 - [app] app - [INFO] INFO - Locating template 'admin_tapo_monitoring.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_tapo_monitoring.html') +2025-06-20 00:49:31 - [app] app - [INFO] INFO - Locating template 'base.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html') +2025-06-20 00:49:31 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:31 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:31 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:49 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:49 - [app] app - [INFO] INFO - Locating template 'calendar.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/calendar.html') +2025-06-20 00:49:49 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:49 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:49 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:49 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:49 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:49 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:49 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:49 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:49 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:54 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:54 - [app] app - [INFO] INFO - Locating template 'admin.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin.html') +2025-06-20 00:49:54 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:54 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:54 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:54 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:54 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:54 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:55 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:56 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:56 - [app] app - [INFO] INFO - Locating template 'guest_request.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/guest_request.html') +2025-06-20 00:49:56 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:56 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:56 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:59 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:59 - [app] app - [INFO] INFO - Locating template 'stats.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/stats.html') +2025-06-20 00:49:59 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:49:59 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:49:59 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:02 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:02 - [app] app - [INFO] INFO - Locating template 'dashboard.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/dashboard.html') +2025-06-20 00:50:02 - [app] app - [INFO] INFO - Locating template 'macros/ui_components.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/macros/ui_components.html') +2025-06-20 00:50:02 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:02 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:02 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:06 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:08 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 1, Status: disconnected, Quelle: system +2025-06-20 00:50:08 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:50:10 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 2, Status: disconnected, Quelle: system +2025-06-20 00:50:10 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:50:12 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:12 - [app] app - [INFO] INFO - Locating template 'guest_requests_overview.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/guest_requests_overview.html') +2025-06-20 00:50:12 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:12 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:12 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:12 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 3, Status: disconnected, Quelle: system +2025-06-20 00:50:12 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:50:14 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 4, Status: disconnected, Quelle: system +2025-06-20 00:50:14 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:50:16 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 5, Status: disconnected, Quelle: system +2025-06-20 00:50:16 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:50:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:18 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 6, Status: disconnected, Quelle: system +2025-06-20 00:50:18 - [app] app - [DEBUG] DEBUG - 📊 Auto-Status protokolliert: Drucker -> +2025-06-20 00:50:18 - [app] app - [DEBUG] DEBUG - ✅ Status-Updates für Drucker erfolgreich gespeichert +2025-06-20 00:50:18 - [app] app - [INFO] INFO - Locating template 'printers.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/printers.html') +2025-06-20 00:50:18 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:18 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:18 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:23 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:23 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:23 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:23 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:24 - [app] app - [INFO] INFO - Locating template 'energy_dashboard.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/energy_dashboard.html') +2025-06-20 00:50:24 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:50:24 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:24 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:50:41 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-20 00:50:41 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-20 00:50:41 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: +2025-06-20 00:50:42 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: +2025-06-20 00:50:43 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 00:50:43 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP -Umgebung +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] 🏢 +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-20 00:50:43 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-20 00:50:43 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-20 00:50:43 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-20 00:50:43 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-20 00:50:43 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-20 00:50:43 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-20 00:50:43 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-20 00:50:43 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-20 00:50:43 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-20 00:50:43 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-20 00:50:43 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-20 00:50:43 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://: +2025-06-20 00:51:13 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-20 00:51:13 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-20 00:51:13 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: +2025-06-20 00:51:14 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: +2025-06-20 00:51:15 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 00:51:15 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP -Umgebung +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] 🏢 +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-20 00:51:15 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-20 00:51:15 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-20 00:51:15 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-20 00:51:15 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-20 00:51:15 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-20 00:51:15 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-20 00:51:15 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-20 00:51:15 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-20 00:51:15 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-20 00:51:15 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-20 00:51:15 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-20 00:51:15 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://: +2025-06-20 00:52:19 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-20 00:52:19 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-20 00:52:19 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: +2025-06-20 00:52:20 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: +2025-06-20 00:52:21 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 00:52:21 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP -Umgebung +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] 🏢 +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-20 00:52:21 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-20 00:52:21 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-20 00:52:21 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-20 00:52:21 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-20 00:52:21 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-20 00:52:21 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-20 00:52:21 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-20 00:52:21 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-20 00:52:21 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-20 00:52:21 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-20 00:52:21 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-20 00:52:21 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://: +2025-06-20 00:52:37 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 00:52:38 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: +2025-06-20 00:52:38 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: +2025-06-20 00:52:38 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-20 00:52:38 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-20 00:52:38 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert +2025-06-20 00:52:38 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: +2025-06-20 00:52:38 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: +2025-06-20 00:52:38 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: +2025-06-20 00:52:38 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 00:52:38 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert +2025-06-20 00:53:21 - [app] app - [INFO] INFO - Locating template 'system_info.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/system_info.html') +2025-06-20 00:53:21 - [app] app - [INFO] INFO - Locating template 'base.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html') +2025-06-20 00:53:21 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:21 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:53:21 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:53:24 - [app] app - [INFO] INFO - Locating template 'calendar.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/calendar.html') +2025-06-20 00:53:24 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:53:24 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:53:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:53:24 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:24 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:24 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:53:24 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:29 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:53:29 - [app] app - [INFO] INFO - Locating template 'dashboard.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/dashboard.html') +2025-06-20 00:53:29 - [app] app - [INFO] INFO - Locating template 'macros/ui_components.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/macros/ui_components.html') +2025-06-20 00:53:29 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:29 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:53:29 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:35 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:53:35 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:35 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:53:35 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:47 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:53:47 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:53:48 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: +2025-06-20 00:53:49 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 00:53:49 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP -Umgebung +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] 🏢 +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-20 00:53:49 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-20 00:53:49 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-20 00:53:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-20 00:53:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-20 00:53:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-20 00:53:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-20 00:53:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-20 00:53:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-20 00:53:49 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-20 00:53:49 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-20 00:53:49 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://: +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-20 00:53:49 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-20 00:53:49 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: +2025-06-20 00:54:05 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:05 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:11 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-20 00:54:11 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-20 00:54:11 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: +2025-06-20 00:54:28 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: +2025-06-20 00:54:28 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 00:54:28 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP -Umgebung +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [STARTUP] 🏢 +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-20 00:54:28 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-20 00:54:28 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-20 00:54:29 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-20 00:54:29 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-20 00:54:29 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-20 00:54:29 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-20 00:54:29 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-20 00:54:29 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-20 00:54:29 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-20 00:54:29 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-20 00:54:29 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-20 00:54:29 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-20 00:54:29 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-20 00:54:29 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-20 00:54:29 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-20 00:54:29 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-20 00:54:29 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-20 00:54:29 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-20 00:54:29 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-20 00:54:29 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://: +2025-06-20 00:54:29 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: +2025-06-20 00:54:30 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 00:54:30 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP -Umgebung +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] 🏢 +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-20 00:54:30 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-20 00:54:30 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-20 00:54:30 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-20 00:54:30 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-20 00:54:30 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-20 00:54:30 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-20 00:54:30 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-20 00:54:30 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-20 00:54:30 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-20 00:54:30 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-20 00:54:30 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-20 00:54:30 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://: +2025-06-20 00:54:32 - [app] app - [INFO] INFO - Locating template 'dashboard.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/dashboard.html') +2025-06-20 00:54:32 - [app] app - [INFO] INFO - Locating template 'base.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html') +2025-06-20 00:54:32 - [app] app - [INFO] INFO - Locating template 'macros/ui_components.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/macros/ui_components.html') +2025-06-20 00:54:32 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:32 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:32 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:35 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:35 - [app] app - [INFO] INFO - Locating template 'guest_requests_overview.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/guest_requests_overview.html') +2025-06-20 00:54:35 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:35 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:35 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:37 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:37 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:37 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:37 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:38 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:38 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:38 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:38 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:38 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:38 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:39 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:39 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:39 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:39 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:41 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:41 - [app] app - [INFO] INFO - Locating template 'guest_request.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/guest_request.html') +2025-06-20 00:54:41 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:41 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:41 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:44 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:44 - [app] app - [INFO] INFO - Locating template 'stats.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/stats.html') +2025-06-20 00:54:44 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:44 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:44 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:46 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:46 - [app] app - [INFO] INFO - Locating template 'energy_dashboard.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/energy_dashboard.html') +2025-06-20 00:54:46 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:46 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:46 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:46 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:46 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:47 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:47 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:56 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:56 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:56 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:56 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:57 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:57 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:58 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:58 - [app] app - [INFO] INFO - Locating template 'admin.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin.html') +2025-06-20 00:54:58 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:59 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:59 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:54:59 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:59 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:54:59 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:00 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:55:00 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:00 - [app] app - [INFO] INFO - Locating template 'admin_guest_otps.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_guest_otps.html') +2025-06-20 00:55:00 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:55:01 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:01 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:01 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:01 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:55:01 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:55:01 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:55:04 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:17 - [app] app - [INFO] INFO - Locating template 'admin_tapo_monitoring.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_tapo_monitoring.html') +2025-06-20 00:55:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:55:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:55:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:55:28 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:28 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:55:28 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:28 - [app] app - [INFO] INFO - Locating template 'login.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/login.html') +2025-06-20 00:55:28 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:55:47 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:47 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:55:47 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:56:00 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:56:00 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:56:00 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:56:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:56:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:56:30 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:56:30 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:56:30 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:56:43 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:56:43 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:56:43 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:56:47 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:56:47 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:56:58 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:56:58 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:00 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:04 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:04 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:13 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:14 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:14 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:43 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:43 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:43 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:45 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-20 00:57:45 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-20 00:57:45 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: +2025-06-20 00:57:45 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: +2025-06-20 00:57:46 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 00:57:46 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP -Umgebung +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [STARTUP] 🏢 +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-20 00:57:46 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-20 00:57:46 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-20 00:57:47 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-20 00:57:47 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-20 00:57:47 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-20 00:57:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-20 00:57:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-20 00:57:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-20 00:57:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-20 00:57:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-20 00:57:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-20 00:57:47 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-20 00:57:47 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-20 00:57:47 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-20 00:57:47 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-20 00:57:47 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-20 00:57:47 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-20 00:57:47 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-20 00:57:47 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-20 00:57:47 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://: +2025-06-20 00:57:47 - [app] app - [INFO] INFO - Locating template 'admin.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin.html') +2025-06-20 00:57:48 - [app] app - [INFO] INFO - Locating template 'base.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html') +2025-06-20 00:57:48 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:48 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:48 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:48 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:48 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:48 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:49 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:50 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:51 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:59 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:59 - [app] app - [INFO] INFO - Locating template 'admin_advanced_settings.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html') +2025-06-20 00:57:59 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:57:59 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:57:59 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:00 - [app] app - [INFO] INFO - Locating template 'admin_tapo_monitoring.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_tapo_monitoring.html') +2025-06-20 00:58:00 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:25 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:25 - [app] app - [INFO] INFO - Locating template 'admin_guest_otps.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_guest_otps.html') +2025-06-20 00:58:25 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:25 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:25 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:25 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:25 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:25 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:25 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:29 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:29 - [app] app - [INFO] INFO - Locating template 'jobs.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/jobs.html') +2025-06-20 00:58:29 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:29 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:29 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:29 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:29 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:29 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:29 - [app] app - [INFO] INFO - ✅ API: Drucker abgerufen (include_inactive=) +2025-06-20 00:58:29 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:31 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:31 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:32 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:32 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:32 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:32 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:32 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:33 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:44 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:44 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:47 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:47 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:51 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:51 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:52 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:52 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:52 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:52 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:52 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:52 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:53 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:54 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:56 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:56 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:57 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:57 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:58:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:58:58 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:59:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:59:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:59:27 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:59:27 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:59:27 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:59:27 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:59:27 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:59:27 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:59:28 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:59:28 - [app] app - [ERROR] ERROR - Datenbank-Transaktion fehlgeschlagen: Textual SQL expression 'SELECT 1' should be explicitly declared as text('SELECT 1') +2025-06-20 00:59:28 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:59:35 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:59:35 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:59:47 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:59:47 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:59:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:59:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:59:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:59:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 00:59:57 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:59:57 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:59:58 - [app] app - [ERROR] ERROR - Datenbank-Transaktion fehlgeschlagen: Textual SQL expression 'SELECT 1' should be explicitly declared as text('SELECT 1') +2025-06-20 00:59:58 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 00:59:58 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:27 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:27 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:27 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:27 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:27 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:27 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:28 - [app] app - [ERROR] ERROR - Datenbank-Transaktion fehlgeschlagen: Textual SQL expression 'SELECT 1' should be explicitly declared as text('SELECT 1') +2025-06-20 01:00:28 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:28 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:36 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:36 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:39 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:39 - [app] app - [INFO] INFO - Locating template 'dashboard.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/dashboard.html') +2025-06-20 01:00:39 - [app] app - [INFO] INFO - Locating template 'macros/ui_components.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/macros/ui_components.html') +2025-06-20 01:00:39 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:39 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:39 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:42 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:42 - [app] app - [INFO] INFO - Locating template 'system_info.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/system_info.html') +2025-06-20 01:00:42 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:42 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:42 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:47 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:47 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:48 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:48 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:48 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:48 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:51 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:51 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:51 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:51 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:51 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:51 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:52 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:52 - [app] app - [INFO] INFO - ✅ API: Drucker abgerufen (include_inactive=) +2025-06-20 01:00:52 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:55 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:55 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:55 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:55 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:00:57 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:00:59 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-20 01:00:59 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-20 01:00:59 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: +2025-06-20 01:01:00 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: backend/database/myp.db +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: +2025-06-20 01:01:01 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-20 01:01:01 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP -Umgebung +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] 🏢 +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-20 01:01:01 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-20 01:01:01 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-20 01:01:01 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-20 01:01:01 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-20 01:01:01 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-20 01:01:01 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-20 01:01:01 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-20 01:01:01 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-20 01:01:01 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-20 01:01:01 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-20 01:01:01 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-20 01:01:01 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://: +2025-06-20 01:01:04 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 1, Status: disconnected, Quelle: system +2025-06-20 01:01:06 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 2, Status: disconnected, Quelle: system +2025-06-20 01:01:09 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 3, Status: disconnected, Quelle: system +2025-06-20 01:01:11 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 4, Status: disconnected, Quelle: system +2025-06-20 01:01:13 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 5, Status: disconnected, Quelle: system +2025-06-20 01:01:15 - [app] app - [INFO] INFO - ✅ Steckdosen-Status geloggt: Drucker 6, Status: disconnected, Quelle: system +2025-06-20 01:01:15 - [app] app - [INFO] INFO - Locating template 'printers.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/printers.html') +2025-06-20 01:01:15 - [app] app - [INFO] INFO - Locating template 'base.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html') +2025-06-20 01:01:15 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:15 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:15 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:17 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:17 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:18 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:18 - [app] app - [INFO] INFO - Locating template 'dashboard.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/dashboard.html') +2025-06-20 01:01:18 - [app] app - [INFO] INFO - Locating template 'macros/ui_components.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/macros/ui_components.html') +2025-06-20 01:01:18 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:18 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:18 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:27 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:27 - [app] app - [INFO] INFO - Locating template 'guest_requests_overview.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/guest_requests_overview.html') +2025-06-20 01:01:28 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:28 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:28 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:30 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:30 - [app] app - [INFO] INFO - Locating template 'guest_request.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/guest_request.html') +2025-06-20 01:01:30 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:30 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:30 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:47 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:47 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:52 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:52 - [app] app - [INFO] INFO - 6-stelliger OTP generiert für Guest Request 1 +2025-06-20 01:01:52 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:52 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:52 - [app] app - [INFO] INFO - Locating template 'guest_status.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/guest_status.html') +2025-06-20 01:01:52 - [app] app - [DEBUG] DEBUG - Response: +2025-06-20 01:01:56 - [app] app - [DEBUG] DEBUG - Request: +2025-06-20 01:01:56 - [app] app - [DEBUG] DEBUG - Response: diff --git a/backend/logs/calendar/calendar.log b/backend/logs/calendar/calendar.log index c9d698c8a..c127c5fe6 100644 --- a/backend/logs/calendar/calendar.log +++ b/backend/logs/calendar/calendar.log @@ -107,3 +107,7 @@ AttributeError: 'ConflictManager' object has no attribute 'detect_conflicts' 2025-06-19 23:55:46 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 0 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 2025-06-20 00:00:55 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 0 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 2025-06-20 00:28:53 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 0 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 +2025-06-20 00:45:48 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 0 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 +2025-06-20 00:47:17 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 0 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 +2025-06-20 00:49:49 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 0 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 +2025-06-20 00:53:24 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 0 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 diff --git a/backend/logs/data_management/data_management.log b/backend/logs/data_management/data_management.log index 748ef7286..5c223999c 100644 --- a/backend/logs/data_management/data_management.log +++ b/backend/logs/data_management/data_management.log @@ -879,3 +879,25 @@ 2025-06-20 00:35:44 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) 2025-06-20 00:35:47 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert 2025-06-20 00:35:47 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:44:54 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-20 00:44:54 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:49:16 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-20 00:49:16 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:50:42 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-20 00:50:42 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:51:14 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-20 00:51:14 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:52:20 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-20 00:52:20 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:52:37 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-20 00:52:37 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:53:48 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-20 00:53:48 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:54:28 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-20 00:54:28 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:54:29 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-20 00:54:29 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:57:46 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-20 00:57:46 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 01:01:00 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-20 01:01:00 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) diff --git a/backend/logs/drucker_steuerung/drucker_steuerung.log b/backend/logs/drucker_steuerung/drucker_steuerung.log index d08e8c3a7..dbc43f878 100644 --- a/backend/logs/drucker_steuerung/drucker_steuerung.log +++ b/backend/logs/drucker_steuerung/drucker_steuerung.log @@ -28,3 +28,14 @@ 2025-06-20 00:33:41 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen 2025-06-20 00:35:45 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen 2025-06-20 00:35:48 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen +2025-06-20 00:44:55 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen +2025-06-20 00:49:17 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen +2025-06-20 00:50:43 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen +2025-06-20 00:51:15 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen +2025-06-20 00:52:21 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen +2025-06-20 00:52:38 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen +2025-06-20 00:53:49 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen +2025-06-20 00:54:28 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen +2025-06-20 00:54:30 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen +2025-06-20 00:57:46 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen +2025-06-20 01:01:01 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen diff --git a/backend/logs/energy_monitoring/energy_monitoring.log b/backend/logs/energy_monitoring/energy_monitoring.log index b02be6513..a10c54f2b 100644 --- a/backend/logs/energy_monitoring/energy_monitoring.log +++ b/backend/logs/energy_monitoring/energy_monitoring.log @@ -735,3 +735,18 @@ 2025-06-20 00:33:41 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert 2025-06-20 00:35:45 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert 2025-06-20 00:35:48 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-20 00:44:55 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-20 00:45:50 - [energy_monitoring] energy_monitoring - [INFO] INFO - 🔋 Energiemonitoring-Dashboard aufgerufen von admin +2025-06-20 00:47:15 - [energy_monitoring] energy_monitoring - [INFO] INFO - 🔋 Energiemonitoring-Dashboard aufgerufen von admin +2025-06-20 00:49:17 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-20 00:50:24 - [energy_monitoring] energy_monitoring - [INFO] INFO - 🔋 Energiemonitoring-Dashboard aufgerufen von admin +2025-06-20 00:50:43 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-20 00:51:15 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-20 00:52:21 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-20 00:52:38 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-20 00:53:49 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-20 00:54:28 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-20 00:54:30 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-20 00:54:46 - [energy_monitoring] energy_monitoring - [INFO] INFO - 🔋 Energiemonitoring-Dashboard aufgerufen von admin +2025-06-20 00:57:46 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-20 01:01:01 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert diff --git a/backend/logs/guest/guest.log b/backend/logs/guest/guest.log index f8a86c880..254d65a83 100644 --- a/backend/logs/guest/guest.log +++ b/backend/logs/guest/guest.log @@ -72,3 +72,4 @@ WHERE user_permissions.can_approve_jobs = 1] 2025-06-16 08:09:46 - [guest] guest - [ERROR] ERROR - Fehler beim Starten des Jobs mit Code: Instance is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3) 2025-06-19 12:06:44 - [guest] guest - [INFO] INFO - Neue Gastanfrage erstellt: ID 1, Name: Till Tomczaktet, OTP generiert 2025-06-19 12:12:32 - [guest] guest - [INFO] INFO - Neue Gastanfrage erstellt: ID 2, Name: Till Tomczaktet, OTP generiert +2025-06-20 01:01:52 - [guest] guest - [INFO] INFO - Neue Gastanfrage erstellt: ID 1, Name: admin@example.com, OTP generiert diff --git a/backend/logs/hardware_integration/hardware_integration.log b/backend/logs/hardware_integration/hardware_integration.log index 3a42d81e0..a00e11db4 100644 --- a/backend/logs/hardware_integration/hardware_integration.log +++ b/backend/logs/hardware_integration/hardware_integration.log @@ -3427,3 +3427,95 @@ 2025-06-20 00:34:47 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) 2025-06-20 00:35:44 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen 2025-06-20 00:35:46 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 00:44:54 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 00:44:59 - [hardware_integration] hardware_integration - [INFO] INFO - 🎯 DruckerSteuerung initialisiert - BACKEND ÜBERNIMMT KONTROLLE +2025-06-20 00:45:01 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:45:03 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:45:05 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:45:07 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:45:09 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:45:11 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:22 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:24 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:26 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:28 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:30 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:33 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:41 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:43 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:46 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:48 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:50 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:47:52 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:48:24 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:48:27 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:48:29 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:48:31 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:48:33 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:48:35 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:49:07 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:49:09 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:49:11 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:49:14 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:49:16 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 00:49:18 - [hardware_integration] hardware_integration - [INFO] INFO - 🎯 DruckerSteuerung initialisiert - BACKEND ÜBERNIMMT KONTROLLE +2025-06-20 00:49:21 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:49:23 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:49:25 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:49:27 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:49:29 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:49:31 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:50:08 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:50:10 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:50:12 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:50:14 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:50:16 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:50:18 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:50:42 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 00:51:14 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 00:52:20 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 00:52:37 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 00:53:48 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 00:54:28 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 00:54:29 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 00:55:04 - [hardware_integration] hardware_integration - [INFO] INFO - 🎯 DruckerSteuerung initialisiert - BACKEND ÜBERNIMMT KONTROLLE +2025-06-20 00:55:06 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:55:08 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:55:10 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:55:12 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:55:15 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:55:17 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:55:49 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:55:51 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:55:53 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:55:55 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:55:58 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:56:00 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:56:32 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:56:34 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:56:37 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:56:39 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:56:41 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:56:43 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:57:02 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:57:04 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:57:07 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:57:09 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:57:11 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:57:13 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:57:46 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 00:57:47 - [hardware_integration] hardware_integration - [INFO] INFO - 🎯 DruckerSteuerung initialisiert - BACKEND ÜBERNIMMT KONTROLLE +2025-06-20 00:57:50 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:57:52 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:57:54 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:57:56 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:57:58 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 00:58:00 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 01:01:00 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen +2025-06-20 01:01:02 - [hardware_integration] hardware_integration - [INFO] INFO - 🎯 DruckerSteuerung initialisiert - BACKEND ÜBERNIMMT KONTROLLE +2025-06-20 01:01:04 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 01:01:06 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.101: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 01:01:09 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.102: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 01:01:11 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.103: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 01:01:13 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.104: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-20 01:01:15 - [hardware_integration] hardware_integration - [ERROR] ERROR - ❌ Fehler beim Prüfen von Steckdose 192.168.0.106: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) diff --git a/backend/logs/job_queue_system/job_queue_system.log b/backend/logs/job_queue_system/job_queue_system.log index 2e8376574..416d631a7 100644 --- a/backend/logs/job_queue_system/job_queue_system.log +++ b/backend/logs/job_queue_system/job_queue_system.log @@ -1700,3 +1700,44 @@ 2025-06-20 00:35:47 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert 2025-06-20 00:35:47 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) 2025-06-20 00:35:48 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-20 00:44:54 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-20 00:44:54 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-20 00:44:55 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-20 00:44:55 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-20 00:49:15 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-20 00:49:16 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-20 00:49:16 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-20 00:49:18 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-20 00:50:41 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-20 00:50:42 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-20 00:50:42 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-20 00:50:43 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-20 00:51:13 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-20 00:51:14 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-20 00:51:14 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-20 00:51:15 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-20 00:52:19 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-20 00:52:20 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-20 00:52:20 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-20 00:52:21 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-20 00:52:37 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-20 00:52:37 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-20 00:53:48 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-20 00:53:48 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-20 00:53:49 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-20 00:53:49 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-20 00:54:11 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-20 00:54:28 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-20 00:54:28 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-20 00:54:29 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-20 00:54:29 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-20 00:54:29 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-20 00:54:30 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-20 00:57:45 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-20 00:57:46 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-20 00:57:46 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-20 00:57:47 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-20 01:00:59 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-20 01:01:00 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-20 01:01:00 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-20 01:01:01 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) diff --git a/backend/logs/jobs/jobs.log b/backend/logs/jobs/jobs.log index afada4c83..2c46b642d 100644 --- a/backend/logs/jobs/jobs.log +++ b/backend/logs/jobs/jobs.log @@ -1011,3 +1011,9 @@ sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) FOREIGN KEY constraint f 2025-06-19 23:55:29 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 0 von 0 (Seite 1) 2025-06-20 00:28:55 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True) 2025-06-20 00:28:55 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 0 von 0 (Seite 1) +2025-06-20 00:47:19 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True) +2025-06-20 00:47:19 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 0 von 0 (Seite 1) +2025-06-20 00:58:29 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True) +2025-06-20 00:58:29 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 0 von 0 (Seite 1) +2025-06-20 01:00:51 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True) +2025-06-20 01:00:51 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 0 von 0 (Seite 1) diff --git a/backend/logs/models/models.log b/backend/logs/models/models.log index d4610079f..ec6d3950e 100644 --- a/backend/logs/models/models.log +++ b/backend/logs/models/models.log @@ -20,3 +20,5 @@ 2025-06-19 12:06:44 - [models] models - [INFO] INFO - Erfolgreich 1 Benachrichtigungen erstellt für 'guest_request' 2025-06-19 12:12:32 - [models] models - [INFO] INFO - Gefunden: 1 Genehmiger für Benachrichtigung 'guest_request' 2025-06-19 12:12:32 - [models] models - [INFO] INFO - Erfolgreich 1 Benachrichtigungen erstellt für 'guest_request' +2025-06-20 01:01:52 - [models] models - [INFO] INFO - Gefunden: 1 Genehmiger für Benachrichtigung 'guest_request' +2025-06-20 01:01:52 - [models] models - [INFO] INFO - Erfolgreich 1 Benachrichtigungen erstellt für 'guest_request' diff --git a/backend/logs/monitoring_analytics/monitoring_analytics.log b/backend/logs/monitoring_analytics/monitoring_analytics.log index a8c7efc90..8e11dad86 100644 --- a/backend/logs/monitoring_analytics/monitoring_analytics.log +++ b/backend/logs/monitoring_analytics/monitoring_analytics.log @@ -869,3 +869,25 @@ 2025-06-20 00:35:45 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) 2025-06-20 00:35:48 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert 2025-06-20 00:35:48 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:44:55 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-20 00:44:55 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:49:17 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-20 00:49:17 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:50:43 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-20 00:50:43 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:51:15 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-20 00:51:15 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:52:21 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-20 00:52:21 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:52:38 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-20 00:52:38 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:53:49 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-20 00:53:49 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:54:28 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-20 00:54:28 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:54:30 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-20 00:54:30 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:57:46 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-20 00:57:46 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 01:01:01 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-20 01:01:01 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) diff --git a/backend/logs/permissions/permissions.log b/backend/logs/permissions/permissions.log index 94fb216ed..8d0a51e81 100644 --- a/backend/logs/permissions/permissions.log +++ b/backend/logs/permissions/permissions.log @@ -439,3 +439,14 @@ WHERE users.role = ?] 2025-06-20 00:33:41 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert 2025-06-20 00:35:45 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert 2025-06-20 00:35:48 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-20 00:44:55 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-20 00:49:17 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-20 00:50:43 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-20 00:51:15 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-20 00:52:21 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-20 00:52:38 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-20 00:53:49 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-20 00:54:28 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-20 00:54:30 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-20 00:57:46 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-20 01:01:01 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert diff --git a/backend/logs/scheduler/scheduler.log b/backend/logs/scheduler/scheduler.log index c513c10e8..ed2c96054 100644 --- a/backend/logs/scheduler/scheduler.log +++ b/backend/logs/scheduler/scheduler.log @@ -2495,3 +2495,34 @@ 2025-06-20 00:35:46 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True 2025-06-20 00:35:48 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet 2025-06-20 00:35:48 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-20 00:44:54 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-20 00:44:55 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-20 00:44:55 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-20 00:49:16 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-20 00:49:18 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-20 00:49:18 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-20 00:50:42 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-20 00:50:43 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-20 00:50:43 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-20 00:51:14 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-20 00:51:15 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-20 00:51:15 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-20 00:52:20 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-20 00:52:21 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-20 00:52:21 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-20 00:52:37 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-20 00:53:48 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-20 00:53:49 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-20 00:53:49 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-20 00:54:28 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-20 00:54:29 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-20 00:54:29 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-20 00:54:29 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-20 00:54:30 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-20 00:54:30 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-20 00:57:46 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-20 00:57:47 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-20 00:57:47 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-20 01:01:00 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-20 01:01:01 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-20 01:01:01 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet diff --git a/backend/logs/security_suite/security_suite.log b/backend/logs/security_suite/security_suite.log index ab4c5dfa9..e84144b0c 100644 --- a/backend/logs/security_suite/security_suite.log +++ b/backend/logs/security_suite/security_suite.log @@ -1313,3 +1313,36 @@ 2025-06-20 00:35:47 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert 2025-06-20 00:35:47 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) 2025-06-20 00:35:48 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-20 00:44:54 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-20 00:44:54 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:44:55 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-20 00:49:16 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-20 00:49:16 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:49:17 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-20 00:50:42 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-20 00:50:42 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:50:43 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-20 00:51:14 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-20 00:51:14 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:51:15 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-20 00:52:20 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-20 00:52:20 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:52:21 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-20 00:52:37 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-20 00:52:37 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:52:38 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-20 00:53:48 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-20 00:53:48 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:53:49 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-20 00:54:28 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-20 00:54:28 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:54:28 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-20 00:54:29 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-20 00:54:29 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:54:30 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-20 00:57:46 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-20 00:57:46 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 00:57:46 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-20 01:01:00 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-20 01:01:00 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-20 01:01:01 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert diff --git a/backend/logs/startup/startup.log b/backend/logs/startup/startup.log index 009725c16..363209d97 100644 --- a/backend/logs/startup/startup.log +++ b/backend/logs/startup/startup.log @@ -3457,3 +3457,80 @@ 2025-06-20 00:35:48 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend 2025-06-20 00:35:48 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T00:35:48.069796 2025-06-20 00:35:48 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:44:55 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:44:55 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-20 00:44:55 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-20 00:44:55 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-20 00:44:55 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-20 00:44:55 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T00:44:55.146069 +2025-06-20 00:44:55 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:49:17 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:49:17 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-20 00:49:17 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-20 00:49:17 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-20 00:49:17 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-20 00:49:17 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T00:49:17.588924 +2025-06-20 00:49:17 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:50:43 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:50:43 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-20 00:50:43 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-20 00:50:43 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-20 00:50:43 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-20 00:50:43 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T00:50:43.210988 +2025-06-20 00:50:43 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:51:15 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:51:15 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-20 00:51:15 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-20 00:51:15 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-20 00:51:15 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-20 00:51:15 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T00:51:15.194351 +2025-06-20 00:51:15 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:52:21 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:52:21 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-20 00:52:21 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-20 00:52:21 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-20 00:52:21 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-20 00:52:21 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T00:52:21.449771 +2025-06-20 00:52:21 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:52:38 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:52:38 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-20 00:52:38 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-20 00:52:38 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-20 00:52:38 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-20 00:52:38 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T00:52:38.238812 +2025-06-20 00:52:38 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:53:49 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:53:49 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-20 00:53:49 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-20 00:53:49 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-20 00:53:49 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-20 00:53:49 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T00:53:49.384560 +2025-06-20 00:53:49 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:54:28 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:54:28 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-20 00:54:28 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-20 00:54:28 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-20 00:54:28 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-20 00:54:28 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T00:54:28.862473 +2025-06-20 00:54:28 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:54:30 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:54:30 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-20 00:54:30 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-20 00:54:30 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-20 00:54:30 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-20 00:54:30 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T00:54:30.467622 +2025-06-20 00:54:30 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:57:46 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 00:57:46 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-20 00:57:46 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-20 00:57:46 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-20 00:57:46 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-20 00:57:46 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T00:57:46.703245 +2025-06-20 00:57:46 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 01:01:01 - [startup] startup - [INFO] INFO - ================================================== +2025-06-20 01:01:01 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-20 01:01:01 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-20 01:01:01 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-20 01:01:01 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-20 01:01:01 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T01:01:01.251932 +2025-06-20 01:01:01 - [startup] startup - [INFO] INFO - ================================================== diff --git a/backend/logs/utilities_collection/utilities_collection.log b/backend/logs/utilities_collection/utilities_collection.log index 8c4f10b9d..8ff6b776c 100644 --- a/backend/logs/utilities_collection/utilities_collection.log +++ b/backend/logs/utilities_collection/utilities_collection.log @@ -1119,3 +1119,27 @@ 2025-06-20 00:35:44 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) 2025-06-20 00:35:46 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert 2025-06-20 00:35:46 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 00:44:54 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 00:44:54 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 00:46:38 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 00:46:38 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 00:49:16 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 00:49:16 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 00:50:42 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 00:50:42 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 00:51:14 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 00:51:14 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 00:52:20 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 00:52:20 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 00:52:37 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 00:52:37 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 00:53:48 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 00:53:48 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 00:54:28 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 00:54:28 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 00:54:29 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 00:54:29 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 00:57:45 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 00:57:45 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-20 01:01:00 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-20 01:01:00 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) diff --git a/backend/static/css/dark-light-unified.css b/backend/static/css/dark-light-unified.css index 2ea45a073..f93462a6c 100644 --- a/backend/static/css/dark-light-unified.css +++ b/backend/static/css/dark-light-unified.css @@ -182,7 +182,11 @@ /* === BUTTONS (Optimiert für beide Modi) === */ .btn, button { - @apply inline-flex items-center justify-center text-sm font-medium; + display: inline-flex; + align-items: center; + justify-content: center; + font-size: 0.875rem; + font-weight: 500; background: var(--bg-card); color: var(--text-primary); border: 1px solid var(--border-primary); @@ -548,7 +552,7 @@ /* === FORM ELEMENTS (Optimiert für beide Modi) === */ .form-input, input:not([type="checkbox"]):not([type="radio"]), textarea, select { - @apply w-full; + width: 100%; background: var(--bg-input); border: 1px solid var(--border-primary); color: var(--text-primary); @@ -605,7 +609,7 @@ /* Form Labels */ .form-label, label { - @apply block text-sm font-medium; + display: block; font-size: 0.875rem; font-weight: 500; color: var(--text-secondary); margin-bottom: 0.5rem; margin-top: 1rem; @@ -729,7 +733,7 @@ select { } .nav-item { - @apply px-3 py-2; + padding: 0.5rem 0.75rem; color: var(--text-secondary); transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); border-radius: 8px; @@ -823,7 +827,7 @@ select { /* === ALERTS === */ .alert { - @apply border; + border: 1px solid var(--border-primary); background: var(--bg-card); border-color: var(--border-primary); border-radius: 16px !important; @@ -862,14 +866,14 @@ select { /* === TABLES === */ .table { - @apply w-full border-collapse; + width: 100%; border-collapse: collapse; border-radius: 16px !important; overflow: hidden; margin: 1rem 0; } .table th { - @apply text-left text-sm font-medium uppercase tracking-wider; + text-align: left; font-size: 0.875rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.05em; background: var(--bg-tertiary); color: var(--text-tertiary); border-bottom: 1px solid var(--border-primary); @@ -877,7 +881,7 @@ select { } .table td { - @apply text-sm; + font-size: 0.875rem; color: var(--text-secondary); border-bottom: 1px solid var(--border-primary); padding: 1rem 1.5rem; @@ -889,7 +893,7 @@ select { /* === TOOLTIPS === */ .tooltip { - @apply absolute z-50 text-sm shadow-lg; + position: absolute; z-index: 50; font-size: 0.875rem; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1); background: var(--bg-modal); color: var(--text-primary); border: 1px solid var(--border-primary); @@ -901,7 +905,7 @@ select { /* === BADGES & STATUS === */ .badge { - @apply inline-flex items-center text-xs font-medium; + display: inline-flex; align-items: center; font-size: 0.75rem; font-weight: 500; background: var(--bg-tertiary); color: var(--text-secondary); border-radius: 16px !important; @@ -931,12 +935,12 @@ select { /* === LOADING STATES === */ .loading { - @apply animate-pulse; + animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; background: var(--bg-tertiary); } .spinner { - @apply animate-spin rounded-full; + animation: spin 1s linear infinite; border-radius: 9999px; border: 2px solid var(--border-primary); border-top-color: var(--text-accent); } @@ -956,7 +960,7 @@ select { } .btn { - @apply text-xs; + font-size: 0.75rem; padding: 0.5rem 1rem; margin: 0.125rem; } @@ -1010,20 +1014,47 @@ select { /* === LEGACY COMPATIBILITY === */ .glass-modal { - @extend .modal; - @extend .glass-card; + position: fixed; + inset: 0; + z-index: 50; + display: flex; + align-items: center; + justify-content: center; + background: rgba(0, 0, 0, 0.5); + backdrop-filter: blur(4px); + background: var(--bg-modal); + border: 1px solid var(--border-primary); + border-radius: 1rem; + box-shadow: var(--shadow-card); } .mb-dashboard-card { - @extend .card; + background: var(--bg-card); + border: 1px solid var(--border-primary); + border-radius: 1rem; + padding: 1.5rem; + box-shadow: var(--shadow-card); + transition: all 0.3s ease; } .btn-professional { - @extend .btn-primary; + background: linear-gradient(135deg, var(--mb-primary), var(--mb-primary-dark)); + color: var(--text-on-primary); + border: 1px solid var(--mb-primary); + padding: 0.75rem 1.5rem; + border-radius: 0.75rem; + font-weight: 600; + transition: all 0.3s ease; + cursor: pointer; } .input-professional { - @extend .form-input; + background: var(--bg-input); + border: 1px solid var(--border-primary); + border-radius: 0.75rem; + padding: 0.75rem 1rem; + color: var(--text-primary); + transition: all 0.3s ease; } /* === CSS CUSTOM PROPERTIES FALLBACKS === */ @@ -1061,7 +1092,7 @@ body { /* === TABLE OPTIMIERUNGEN === */ .table { - @apply w-full border-collapse; + width: 100%; border-collapse: collapse; border-radius: 12px !important; overflow: hidden; margin: 1rem 0; @@ -1070,7 +1101,7 @@ body { } .table th { - @apply text-left text-sm font-medium uppercase tracking-wider; + text-align: left; font-size: 0.875rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.05em; background: var(--bg-tertiary); color: var(--text-tertiary); border-bottom: 1px solid var(--border-primary); @@ -1078,7 +1109,7 @@ body { } .table td { - @apply text-sm; + font-size: 0.875rem; color: var(--text-secondary); border-bottom: 1px solid var(--border-primary); padding: 1rem 1.5rem; @@ -1103,7 +1134,7 @@ body { /* === TOOLTIPS === */ .tooltip { - @apply absolute z-50 text-sm; + position: absolute; z-index: 50; font-size: 0.875rem; background: var(--bg-modal); color: var(--text-primary); border: 1px solid var(--border-primary); @@ -1116,7 +1147,7 @@ body { /* === BADGES & STATUS === */ .badge { - @apply inline-flex items-center text-xs font-medium; + display: inline-flex; align-items: center; font-size: 0.75rem; font-weight: 500; background: var(--bg-tertiary); color: var(--text-secondary); border-radius: 12px !important; @@ -1145,7 +1176,7 @@ body { } .btn { - @apply text-sm; + font-size: 0.875rem; padding: 0.625rem 1rem; margin: 0.125rem; border-radius: 8px; @@ -1286,13 +1317,13 @@ body { /* === LOADING STATES === */ .loading { - @apply animate-pulse; + animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; background: var(--bg-tertiary); border-radius: 8px; } .spinner { - @apply animate-spin rounded-full; + animation: spin 1s linear infinite; border-radius: 9999px; border: 2px solid var(--border-primary); border-top-color: var(--text-accent); width: 1.5rem; diff --git a/backend/static/css/output.css b/backend/static/css/output.css index 024c0bb53..9ffcf1c78 100644 --- a/backend/static/css/output.css +++ b/backend/static/css/output.css @@ -1 +1 @@ -*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Mercedes-Benz Text,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--color-bg-primary:#fff;--color-bg-secondary:#fafbfc;--color-bg-tertiary:#f3f5f7;--color-bg-accent:#fbfcfd;--color-text-primary:#111827;--color-text-secondary:#374151;--color-text-muted:#6b7280;--color-text-accent:#0073ce;--color-border-primary:#e5e7eb;--color-border-secondary:#d1d5db;--color-accent:#0073ce;--color-accent-hover:#005a9f;--color-accent-light:#eff6ff;--color-accent-text:#fff;--color-shadow:rgba(0,0,0,.06);--color-shadow-strong:rgba(0,0,0,.1);--color-shadow-accent:rgba(0,115,206,.12);--card-radius:1rem;--gradient-primary:linear-gradient(135deg,#fff,#fafbfc 30%,#f8fafc 70%,#f3f5f7);--gradient-card:linear-gradient(135deg,#fff,#fcfcfd 50%,#fafbfc);--gradient-hero:linear-gradient(135deg,#fafbfc,#f3f5f7 40%,#eef2f5 80%,#f8fafc);--gradient-accent:linear-gradient(135deg,#0073ce,#005a9f);--gradient-surface:linear-gradient(135deg,#fff,#fbfcfd 50%,#f8fafc);--glass-bg:hsla(0,0%,100%,.92);--glass-border:hsla(0,0%,100%,.3);--glass-shadow:0 8px 32px rgba(0,0,0,.04);--glass-blur:blur(20px)}.dark{--color-bg-primary:#000;--color-bg-secondary:#0a0a0a;--color-bg-tertiary:#1a1a1a;--color-text-primary:#fff;--color-text-secondary:#e2e8f0;--color-text-muted:#94a3b8;--color-border-primary:#1a1a1a;--color-border-secondary:#2a2a2a;--color-accent:#fff;--color-accent-hover:#f0f0f0;--color-accent-light:#1e3a8a;--color-accent-text:#000;--color-shadow:rgba(0,0,0,.8);--color-shadow-strong:rgba(0,0,0,.9);--mb-black:#000}body{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}body:is(.dark *){--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}body{position:relative;min-height:100vh;background:var(--gradient-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:"cv02","cv03","cv04","cv11";line-height:1.65;font-size:15px}.dark body{background:linear-gradient(135deg,#000,#0a0a0a 50%,#000)}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 25% 25%,rgba(0,115,206,.015) 0,transparent 50%),radial-gradient(circle at 75% 75%,rgba(0,115,206,.01) 0,transparent 50%),radial-gradient(circle at 50% 10%,rgba(0,115,206,.008) 0,transparent 50%);pointer-events:none;z-index:-1}.dark body:before{background:radial-gradient(circle at 20% 50%,rgba(59,130,246,.03) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(59,130,246,.02) 0,transparent 50%)}nav{border-bottom-width:1px;--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:linear-gradient(135deg,hsla(0,0%,100%,.95),rgba(250,251,252,.92) 30%,rgba(248,250,252,.9) 70%,hsla(0,0%,100%,.95));border-bottom:1px solid rgba(229,231,235,.7);backdrop-filter:blur(28px) saturate(200%) brightness(110%);-webkit-backdrop-filter:blur(28px) saturate(200%) brightness(110%);box-shadow:0 4px 20px rgba(0,0,0,.04),0 2px 8px rgba(0,115,206,.02),inset 0 1px 0 hsla(0,0%,100%,.9)}.dark nav{background:rgba(0,0,0,.85);border-bottom-color:hsla(0,0%,100%,.1);box-shadow:0 8px 32px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.05)}.dark .card-enhanced{background:hsla(0,0%,4%,.8);border-color:var(--color-border-primary);box-shadow:0 4px 20px var(--color-shadow)}.btn-secondary{background:var(--gradient-surface);color:var(--color-text-primary);border:1px solid var(--color-border-primary);box-shadow:0 1px 6px rgba(0,0,0,.03),inset 0 1px 0 hsla(0,0%,100%,.8)}.btn-secondary:hover{background:var(--color-bg-secondary);border-color:var(--color-accent);color:var(--color-accent);box-shadow:0 4px 12px rgba(0,115,206,.08),inset 0 1px 0 hsla(0,0%,100%,.9)}.dark .input-enhanced{background:hsla(0,0%,4%,.8);border-color:var(--color-border-primary);color:var(--color-text-primary);box-shadow:0 2px 8px var(--color-shadow),inset 0 1px 0 hsla(0,0%,100%,.05)}.dark .input-enhanced:focus{border-color:#60a5fa;box-shadow:0 4px 15px rgba(96,165,250,.2),0 0 0 3px rgba(96,165,250,.1)}.\!container{width:100%!important}.container{width:100%}@media (min-width:475px){.\!container{max-width:475px!important}.container{max-width:475px}}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}@media (min-width:1920px){.\!container{max-width:1920px!important}.container{max-width:1920px}}@media (min-width:2560px){.\!container{max-width:2560px!important}.container{max-width:2560px}}.form-input,.form-multiselect,.form-select,.form-textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow:0 0 #0000}.form-input:focus,.form-multiselect:focus,.form-select:focus,.form-textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}.form-input::-moz-placeholder,.form-textarea::-moz-placeholder{color:#6b7280;opacity:1}.form-input::placeholder,.form-textarea::placeholder{color:#6b7280;opacity:1}.form-input::-webkit-datetime-edit-fields-wrapper{padding:0}.form-input::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}.form-input::-webkit-datetime-edit{display:inline-flex}.form-input::-webkit-datetime-edit,.form-input::-webkit-datetime-edit-day-field,.form-input::-webkit-datetime-edit-hour-field,.form-input::-webkit-datetime-edit-meridiem-field,.form-input::-webkit-datetime-edit-millisecond-field,.form-input::-webkit-datetime-edit-minute-field,.form-input::-webkit-datetime-edit-month-field,.form-input::-webkit-datetime-edit-second-field,.form-input::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}.form-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}.form-select:where([size]:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}.btn-mercedes{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,#0073ce,#005ba3);color:#fff;border:none;cursor:pointer}.btn-mercedes:hover{background:linear-gradient(135deg,#005ba3,#003d82);transform:translateY(-2px);box-shadow:0 12px 20px -5px rgba(0,115,206,.4)}.btn-mercedes:focus{outline:none;box-shadow:0 0 0 3px rgba(0,115,206,.3)}.btn-mercedes:active{transform:translateY(0);box-shadow:inset 0 2px 4px rgba(0,0,0,.2)}.mercedes-form-input{padding:.75rem 1rem;border-radius:8px;border:2px solid #e5e7eb;background:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:500}.mercedes-form-input:focus{border-color:#0073ce;box-shadow:0 0 0 4px rgba(0,115,206,.1),0 10px 15px -3px rgba(0,0,0,.1);transform:translateY(-2px);background:#fff}.dashboard-card{background:linear-gradient(135deg,#fff,#f8fafc);border:2px solid #f1f5f9;border-radius:16px;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dashboard-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 25px 50px -12px rgba(0,0,0,.15);border-color:#0073ce}.dark .bg-dark-card{background-color:#1e293b;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.admin-stats{margin-bottom:2rem;display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1rem}@media (min-width:640px){.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.admin-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat-card{position:relative;overflow:hidden;border-radius:12px;border-width:1px;border-color:rgba(229,231,235,.6);background-color:hsla(0,0%,100%,.6);padding:1.25rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.stat-card,.stat-card:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.stat-card:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.stat-card:is(.dark *){border-color:rgba(51,65,85,.3);background-color:rgba(0,0,0,.7)}.stat-card{backdrop-filter:blur(20px) saturate(180%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(180%) brightness(110%);box-shadow:0 25px 50px rgba(0,0,0,.15),0 0 0 1px hsla(0,0%,100%,.1)}.stat-icon{position:absolute;top:1rem;right:1rem;font-size:2.25rem;line-height:2.5rem;opacity:.15}.stat-title{margin-bottom:.5rem;font-size:.875rem;line-height:1.25rem;font-weight:500;text-transform:uppercase;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.stat-title:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.stat-value{margin-bottom:.25rem;font-size:1.5rem;line-height:2rem;font-weight:700;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.stat-value:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.stat-desc{font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.stat-desc:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.nav-tab{cursor:pointer;white-space:nowrap;border-bottom-width:2px;border-color:transparent;padding:1rem 1.5rem;--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.nav-tab:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.nav-tab:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.nav-tab:hover:is(.dark *){background-color:rgba(30,41,59,.5);--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.nav-tab.active{border-bottom-width:2px;--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity,1));font-weight:500;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.nav-tab.active:is(.dark *){--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.tab-content{margin-top:2rem}.tab-pane{display:none}.dark-mode-toggle-new .moon-icon:not(.tab-pane),.dark-mode-toggle-new .sun-icon:not(.tab-pane){animation:spin-in .5s cubic-bezier(.25,1,.5,1) forwards}.tab-pane.active{display:block}.form-input,.form-select,.form-textarea{width:100%;border-radius:.5rem;border-width:1px;border-color:rgba(209,213,219,.6);background-color:hsla(0,0%,100%,.6);padding:.5rem .75rem;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.form-input::-moz-placeholder,.form-select::-moz-placeholder,.form-textarea::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(156 163 175/var(--tw-placeholder-opacity,1))}.form-input::placeholder,.form-select::placeholder,.form-textarea::placeholder{--tw-placeholder-opacity:1;color:rgb(156 163 175/var(--tw-placeholder-opacity,1))}.form-input,.form-select,.form-textarea{--tw-backdrop-blur:blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:transparent;outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(100 116 139/var(--tw-ring-opacity,1))}.form-input:is(.dark *),.form-select:is(.dark *),.form-textarea:is(.dark *){border-color:rgba(71,85,105,.6);background-color:rgba(30,41,59,.6);--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.form-input,.form-select,.form-textarea{backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);box-shadow:0 10px 20px rgba(0,0,0,.1),0 0 0 1px hsla(0,0%,100%,.05)}.admin-table{min-width:100%}.admin-table>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse));--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.admin-table:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(51 65 85/var(--tw-divide-opacity,1))}.admin-table thead{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.admin-table thead:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.admin-table th{padding:.75rem 1.5rem;text-align:left;font-size:.75rem;line-height:1rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.admin-table th:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.admin-table tbody>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse));--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.admin-table tbody{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.admin-table tbody:is(.dark *){background-color:#1e293b}.admin-table tbody:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(51 65 85/var(--tw-divide-opacity,1))}.admin-table tr{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.admin-table tr:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.admin-table tr:hover:is(.dark *){background-color:rgba(51,65,85,.5)}.admin-table td{white-space:nowrap;padding:1rem 1.5rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.admin-table td:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.badge{display:inline-flex;border-radius:9999px;padding-left:.5rem;padding-right:.5rem;font-size:.75rem;font-weight:600;line-height:1.25rem}.printer-card{border-radius:12px;border-width:1px;border-color:rgba(229,231,235,.6);background-color:hsla(0,0%,100%,.6);padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.printer-card,.printer-card:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.printer-card:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.printer-card:is(.dark *){border-color:rgba(51,65,85,.3);background-color:rgba(0,0,0,.7)}.printer-card{backdrop-filter:blur(20px) saturate(180%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(180%) brightness(110%);box-shadow:0 25px 50px rgba(0,0,0,.15),0 0 0 1px hsla(0,0%,100%,.1)}.printer-name{font-size:1.25rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.printer-name:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.printer-status{margin-top:1rem;display:flex;align-items:center}.status-indicator{margin-right:.5rem;height:.75rem;width:.75rem;border-radius:9999px}.status-running{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1));animation:pulse 2s infinite}.log-entry{margin-bottom:.5rem;border-top-right-radius:.5rem;border-bottom-right-radius:.5rem;border-left-width:4px;--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.log-entry:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.log-entry:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.log-entry:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.scheduler-status{display:flex;align-items:center;border-radius:.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));padding:1rem;--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.scheduler-status:is(.dark *){--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.progress-bar{height:.5rem;width:100%;overflow:hidden;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.progress-bar:is(.dark *){--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.progress-bar-fill{height:100%;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.\!notification,.notification{position:fixed;top:1rem;right:1rem;z-index:50;max-width:28rem;--tw-translate-x:100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:16px;padding:1rem;opacity:0;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s}.\!notification{background:hsla(0,0%,100%,.08)!important;backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%)!important;-webkit-backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%)!important;border:1px solid hsla(0,0%,100%,.25)!important;box-shadow:0 32px 64px rgba(0,0,0,.25),0 12px 24px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px hsla(0,0%,100%,.1)!important;animation:notification-slide-in .6s cubic-bezier(.4,0,.2,1)!important}.notification{background:hsla(0,0%,100%,.08);backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);-webkit-backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);border:1px solid hsla(0,0%,100%,.25);box-shadow:0 32px 64px rgba(0,0,0,.25),0 12px 24px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px hsla(0,0%,100%,.1);animation:notification-slide-in .6s cubic-bezier(.4,0,.2,1)}.dark .notification{background:rgba(0,0,0,.2);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 32px 64px rgba(0,0,0,.6),0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.dark .\!notification{background:rgba(0,0,0,.2)!important;backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%)!important;-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%)!important;border:1px solid hsla(0,0%,100%,.15)!important;box-shadow:0 32px 64px rgba(0,0,0,.6),0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)!important}.\!notification.show,.notification.\!show,.notification.show{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:1}.\!notification:hover{transform:translateY(-2px) scale(1.02)!important;box-shadow:0 40px 80px rgba(0,0,0,.3),0 16px 32px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px hsla(0,0%,100%,.15)!important}.notification:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 40px 80px rgba(0,0,0,.3),0 16px 32px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px hsla(0,0%,100%,.15)}.dark .notification:hover{box-shadow:0 40px 80px rgba(0,0,0,.7),0 16px 32px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1)}.dark .\!notification:hover{box-shadow:0 40px 80px rgba(0,0,0,.7),0 16px 32px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1)!important}.notification-success{--tw-text-opacity:1;color:rgb(220 252 231/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(34,197,94,.25),rgba(134,239,172,.18) 50%,rgba(34,197,94,.12));border:1px solid rgba(34,197,94,.4);box-shadow:0 32px 64px rgba(34,197,94,.2),0 12px 24px rgba(34,197,94,.1),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px rgba(34,197,94,.3)}.notification-error{--tw-text-opacity:1;color:rgb(254 226 226/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(239,68,68,.25),hsla(0,94%,82%,.18) 50%,rgba(239,68,68,.12));border:1px solid rgba(239,68,68,.4);box-shadow:0 32px 64px rgba(239,68,68,.2),0 12px 24px rgba(239,68,68,.1),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px rgba(239,68,68,.3)}.notification-warning{--tw-text-opacity:1;color:rgb(254 249 195/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(245,158,11,.25),rgba(252,211,77,.18) 50%,rgba(245,158,11,.12));border:1px solid rgba(245,158,11,.4);box-shadow:0 32px 64px rgba(245,158,11,.2),0 12px 24px rgba(245,158,11,.1),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px rgba(245,158,11,.3)}.notification-info{--tw-text-opacity:1;color:rgb(219 234 254/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(59,130,246,.25),rgba(147,197,253,.18) 50%,rgba(59,130,246,.12));border:1px solid rgba(59,130,246,.4);box-shadow:0 32px 64px rgba(59,130,246,.2),0 12px 24px rgba(59,130,246,.1),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px rgba(59,130,246,.3)}.dark .toast-notification{background:rgba(0,0,0,.2);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 32px 64px rgba(0,0,0,.6),0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.alert{margin-bottom:1.5rem;border-radius:16px;border-width:1px;padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);background:hsla(0,0%,100%,.12);backdrop-filter:blur(30px) saturate(200%) brightness(120%) contrast(110%);-webkit-backdrop-filter:blur(30px) saturate(200%) brightness(120%) contrast(110%);border:1px solid hsla(0,0%,100%,.25);box-shadow:0 25px 50px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1);animation:alert-fade-in .5s ease-out}.dark .alert{background:rgba(0,0,0,.3);backdrop-filter:blur(30px) saturate(180%) brightness(110%) contrast(120%);-webkit-backdrop-filter:blur(30px) saturate(180%) brightness(110%) contrast(120%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 25px 50px rgba(0,0,0,.4),0 8px 16px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.15),0 0 0 1px hsla(0,0%,100%,.05)}.dark .browser-notification{background:rgba(0,0,0,.2);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 32px 64px rgba(0,0,0,.6),0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}@keyframes notification-slide-in{0%{opacity:0;transform:translateX(100%) translateY(-20px) scale(.9);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}50%{opacity:.8;transform:translateX(20px) translateY(-10px) scale(1.05);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}to{opacity:1;transform:translateX(0) translateY(0) scale(1);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px)}}@keyframes notification-slide-out{0%{opacity:1;transform:translateX(0) translateY(0) scale(1)}to{opacity:0;transform:translateX(100%) translateY(-20px) scale(.9)}}@keyframes notification-slide-left{0%{opacity:0;transform:translateX(-100%) translateY(-20px) scale(.9);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}50%{opacity:.8;transform:translateX(-20px) translateY(-10px) scale(1.05);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}to{opacity:1;transform:translateX(0) translateY(0) scale(1);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px)}}@keyframes alert-fade-in{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.\!notification.hiding{animation:notification-slide-out .4s cubic-bezier(.4,0,.2,1) forwards!important}.notification.hiding{animation:notification-slide-out .4s cubic-bezier(.4,0,.2,1) forwards}.notification-icon{margin-right:.75rem;display:flex;height:2rem;width:2rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:9999px;background:hsla(0,0%,100%,.2);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.4)}.notification-content{flex:1 1 0%}.notification-title{margin-bottom:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:600}.notification-message{font-size:.875rem;line-height:1.25rem;opacity:.9}.notification-close{margin-left:.75rem;border-radius:.5rem;padding:.25rem;opacity:.7;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.notification-close:hover{opacity:1}.notification-close{background:hsla(0,0%,100%,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.2)}.notification-close:hover{background:hsla(0,0%,100%,.2);transform:scale(1.1)}.notifications-container{position:fixed;top:1rem;right:1rem;z-index:50;max-width:28rem}.notifications-container>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.flash-message-light.success{border-left:4px solid #10b981;background:linear-gradient(135deg,rgba(236,253,245,.95),rgba(209,250,229,.9))}.flash-message-light.error{border-left:4px solid #ef4444;background:linear-gradient(135deg,hsla(0,86%,97%,.95),hsla(0,94%,82%,.9))}.flash-message-light.\!warning{border-left:4px solid #fbbf24!important;background:linear-gradient(135deg,rgba(255,251,235,.95),hsla(48,96%,89%,.9))!important}.flash-message-light.warning{border-left:4px solid #fbbf24;background:linear-gradient(135deg,rgba(255,251,235,.95),hsla(48,96%,89%,.9))}.flash-message-light.info{border-left:4px solid #3b82f6;background:linear-gradient(135deg,rgba(239,246,255,.95),rgba(219,234,254,.9))}.dark .table-enhanced{background:hsla(0,0%,4%,.8);border-color:var(--color-border-primary)}.dark .table-enhanced th{background:rgba(26,26,26,.8);color:var(--color-text-primary)}.dark .table-enhanced tbody tr:hover{background:rgba(26,26,26,.6)}.dark .modal-enhanced{background:rgba(0,0,0,.95);border-color:rgba(42,42,42,.7);box-shadow:0 50px 100px rgba(0,0,0,.5),inset 0 2px 0 hsla(0,0%,100%,.05)}.dark-mode-toggle-new{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:9999px;padding:.625rem;transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,rgba(248,250,252,.9),rgba(241,245,249,.8));border:1px solid rgba(226,232,240,.7);box-shadow:0 4px 12px rgba(0,0,0,.06),0 2px 4px rgba(0,115,206,.04),inset 0 1px 0 hsla(0,0%,100%,.8);color:var(--color-text-secondary)}.dark-mode-toggle-new:hover{transform:translateY(-2px) scale(1.05);background:linear-gradient(135deg,rgba(248,250,252,.95),rgba(241,245,249,.85));box-shadow:0 8px 20px rgba(0,0,0,.1),0 4px 8px rgba(0,115,206,.08),inset 0 1px 0 hsla(0,0%,100%,.9)}.dark-mode-toggle-new:active{transform:translateY(-1px) scale(.98)}.dark .dark-mode-toggle-new{background:hsla(0,0%,4%,.8);border:1px solid rgba(42,42,42,.6);box-shadow:0 4px 12px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.05);color:var(--color-text-secondary)}.dark .dark-mode-toggle-new:hover{background:hsla(0,0%,4%,.9);box-shadow:0 8px 20px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.08)}.dark-mode-toggle-new .moon-icon,.dark-mode-toggle-new .sun-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:all .3s cubic-bezier(.4,0,.2,1)}.dark-mode-toggle-new .moon-icon:not(.hidden),.dark-mode-toggle-new .sun-icon:not(.hidden){animation:icon-appear .5s cubic-bezier(.25,1,.5,1) forwards}@keyframes icon-appear{0%{opacity:0;transform:translate(-50%,-50%) scale(.5) rotate(-20deg)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}.dark .user-menu-button-new{background:hsla(0,0%,4%,.7);border-color:rgba(42,42,42,.6);box-shadow:0 2px 8px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.03)}.dark .user-menu-button-new:hover{background:hsla(0,0%,4%,.8);box-shadow:0 4px 12px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.05)}.dark .hover-lift-enhanced:hover{box-shadow:0 12px 30px var(--color-shadow)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--color-border-secondary) 0,var(--color-border-primary) 100%);border-radius:4px;-webkit-transition:background .2s ease;transition:background .2s ease}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--color-accent) 0,var(--color-accent-hover) 100%)}.dark ::-webkit-scrollbar-track{background:var(--color-bg-secondary)}.dark ::-webkit-scrollbar-thumb{background:var(--color-border-primary)}.dark ::-webkit-scrollbar-thumb:hover{background:#60a5fa}@keyframes loading-shimmer{0%{left:-100%}to{left:100%}}.dark .focus-enhanced:focus{outline-color:#60a5fa;box-shadow:0 0 0 4px rgba(96,165,250,.15),0 4px 12px rgba(96,165,250,.2)}@media (max-width:768px){.card-enhanced{padding:1rem;border-radius:.75rem}.btn-enhanced{padding:.75rem 1.5rem;font-size:.8rem}.modal-enhanced{border-radius:1rem;margin:1rem}.dark-mode-toggle-new{padding:.5rem}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media (prefers-contrast:high){:root{--color-shadow:rgba(0,0,0,.2);--color-shadow-strong:rgba(0,0,0,.3);--color-border-primary:#000}.dark{--color-border-primary:#fff}}.btn-primary{border-radius:.5rem;padding:.5rem 1rem;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.btn-primary:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.btn-primary:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(107 114 128/var(--tw-ring-opacity,1));--tw-ring-offset-width:2px}.btn-primary:is(.dark *){--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.btn-primary{background:rgba(0,0,0,.7);backdrop-filter:blur(20px) saturate(150%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(150%) brightness(110%);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 20px 40px rgba(0,0,0,.3),0 8px 16px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.1)}.btn-primary:hover{background:rgba(0,0,0,.9);backdrop-filter:blur(25px) saturate(180%) brightness(120%);-webkit-backdrop-filter:blur(25px) saturate(180%) brightness(120%);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 25px 50px rgba(0,0,0,.4),0 10px 20px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.3)}.dark .btn-primary{background:hsla(0,0%,100%,.7);border:1px solid rgba(0,0,0,.1);box-shadow:0 20px 40px rgba(0,0,0,.2),0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.8),0 0 0 1px rgba(0,0,0,.05)}.dark .btn-primary:hover{background:hsla(0,0%,100%,.9);border:1px solid rgba(0,0,0,.15);box-shadow:0 25px 50px rgba(0,0,0,.3),0 10px 20px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.9)}.btn-secondary{border-radius:.5rem;padding:.5rem 1rem;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1));--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.btn-secondary:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.btn-secondary:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(100 116 139/var(--tw-ring-opacity,1));--tw-ring-offset-width:2px}.btn-secondary:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.btn-secondary{background:hsla(0,0%,100%,.3);backdrop-filter:blur(20px) saturate(150%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(150%) brightness(110%);border:1px solid hsla(0,0%,100%,.4);box-shadow:0 20px 40px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px hsla(0,0%,100%,.2)}.btn-secondary:hover{background:hsla(0,0%,100%,.5);backdrop-filter:blur(25px) saturate(180%) brightness(120%);-webkit-backdrop-filter:blur(25px) saturate(180%) brightness(120%);border:1px solid hsla(0,0%,100%,.6);box-shadow:0 25px 50px rgba(0,0,0,.2),0 10px 20px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.7)}.dark .btn-secondary{background:rgba(0,0,0,.4);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 20px 40px rgba(0,0,0,.3),0 8px 16px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.1)}.dark .btn-secondary:hover{background:rgba(0,0,0,.6);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 25px 50px rgba(0,0,0,.4),0 10px 20px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.3)}.btn-outline{border-radius:.5rem;border-width:2px;border-color:rgba(0,0,0,.7);padding:.5rem 1rem;--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1));--tw-backdrop-blur:blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.btn-outline:hover{background-color:rgba(0,0,0,.7);--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.btn-outline:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(107 114 128/var(--tw-ring-opacity,1));--tw-ring-offset-width:2px}.btn-outline:is(.dark *){border-color:hsla(0,0%,100%,.7);--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.btn-outline:hover:is(.dark *){background-color:hsla(0,0%,100%,.7);--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.btn-outline{backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);box-shadow:0 15px 30px rgba(0,0,0,.1),0 0 0 1px hsla(0,0%,100%,.05)}.glass-card{border-radius:12px;padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:hsla(0,0%,100%,.15);backdrop-filter:blur(30px) saturate(200%) brightness(120%) contrast(110%);-webkit-backdrop-filter:blur(30px) saturate(200%) brightness(120%) contrast(110%);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 25px 50px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1);border-radius:var(--card-radius)}.dark .glass-card{background:rgba(0,0,0,.3);backdrop-filter:blur(30px) saturate(180%) brightness(110%) contrast(120%);-webkit-backdrop-filter:blur(30px) saturate(180%) brightness(110%) contrast(120%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 25px 50px rgba(0,0,0,.4),0 8px 16px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.15),0 0 0 1px hsla(0,0%,100%,.05)}.dashboard-card{border-radius:12px;padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.dashboard-card:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dashboard-card{background:hsla(0,0%,100%,.12);backdrop-filter:blur(35px) saturate(200%) brightness(125%) contrast(115%);-webkit-backdrop-filter:blur(35px) saturate(200%) brightness(125%) contrast(115%);border:1px solid hsla(0,0%,100%,.25);box-shadow:0 25px 50px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.25),0 0 0 1px hsla(0,0%,100%,.1);border-radius:var(--card-radius)}.dark .dashboard-card{background:rgba(0,0,0,.35);backdrop-filter:blur(35px) saturate(180%) brightness(115%) contrast(125%);-webkit-backdrop-filter:blur(35px) saturate(180%) brightness(115%) contrast(125%);border:1px solid hsla(0,0%,100%,.12);box-shadow:0 25px 50px rgba(0,0,0,.5),0 8px 16px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.12),0 0 0 1px hsla(0,0%,100%,.05)}.nav-link.active{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nav-link.active:is(.dark *){--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.navbar{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;background:hsla(0,0%,100%,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:10px;box-shadow:0 4px 6px rgba(0,0,0,.1);transition:all .3s ease}@media (max-width:768px){.navbar{flex-direction:column;padding:.25rem}.navbar-button{margin:.25rem 0}}.dark .navbar{background:rgba(0,0,0,.25);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(120%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(120%);box-shadow:0 8px 32px rgba(0,0,0,.6),0 2px 8px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.1),0 0 0 1px hsla(0,0%,100%,.05);border-bottom:1px solid hsla(0,0%,100%,.1)}.navbar-brand{display:flex;align-items:center}.navbar-brand>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.navbar-brand{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.navbar-brand:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark .navbar-menu{background:rgba(0,0,0,.4);backdrop-filter:blur(20px) saturate(150%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(150%) brightness(110%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 4px 16px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.user-avatar{display:flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1));font-size:.875rem;line-height:1.25rem;font-weight:700;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.user-avatar,.user-avatar:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.user-avatar:hover{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.user-avatar:is(.dark *){--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.dark .menu-item{background:rgba(0,0,0,.2);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 2px 8px rgba(0,0,0,.2)}.dark .menu-item:hover{background:rgba(0,0,0,.4);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 4px 16px rgba(0,0,0,.3)}.menu-item.active{font-weight:500;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.menu-item.active:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.menu-item.active{background:hsla(0,0%,100%,.5);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid hsla(0,0%,100%,.6);box-shadow:0 4px 16px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.5)}.dark .menu-item.active{background:rgba(0,0,0,.6);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 4px 16px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2)}.user-dropdown{position:absolute;right:0;z-index:50;margin-top:.5rem;width:16rem;overflow:hidden;border-radius:12px;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);background:hsla(0,0%,100%,.1);backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);-webkit-backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 25px 50px rgba(0,0,0,.25),0 8px 16px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px hsla(0,0%,100%,.1);animation:fadeIn .2s ease-out forwards}.dark .user-dropdown{background:rgba(0,0,0,.4);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(120%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(120%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 25px 50px rgba(0,0,0,.6),0 8px 16px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.dropdown-header{display:flex;align-items:center;border-bottom-width:1px;border-color:rgba(229,231,235,.8);padding:1rem}.dropdown-header:is(.dark *){border-color:rgba(51,65,85,.3)}.dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.dropdown-item:hover{background-color:rgba(243,244,246,.8);--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.dropdown-item:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.dropdown-item:hover:is(.dark *){background-color:rgba(51,65,85,.6);--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dropdown-divider{border-top-width:1px;border-color:rgba(229,231,235,.8)}.dropdown-divider:is(.dark *){border-color:rgba(51,65,85,.3)}@keyframes mercedes-rotate{0%{transform:rotate(0deg)}25%{transform:rotate(90deg)}50%{transform:rotate(180deg)}75%{transform:rotate(270deg)}to{transform:rotate(1turn)}}.navbar-brand:hover svg{animation:mercedes-rotate 5s linear infinite;transform-origin:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.-bottom-2{bottom:-.5rem}.-bottom-40{bottom:-10rem}.-bottom-8{bottom:-2rem}.-left-2{left:-.5rem}.-left-32{left:-8rem}.-right-1{right:-.25rem}.-right-2{right:-.5rem}.-right-32{right:-8rem}.-top-1{top:-.25rem}.-top-2{top:-.5rem}.-top-40{top:-10rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-8{bottom:2rem}.bottom-full{bottom:100%}.end-1{inset-inline-end:.25rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-1{right:.25rem}.right-3{right:.75rem}.right-4{right:1rem}.right-5{right:1.25rem}.right-6{right:1.5rem}.right-8{right:2rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-20{top:5rem}.top-3{top:.75rem}.top-4{top:1rem}.top-5{top:1.25rem}.top-6{top:1.5rem}.top-8{top:2rem}.top-full{top:100%}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.col-span-1{grid-column:span 1/span 1}.col-span-full{grid-column:1/-1}.m-1{margin:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-8{margin-left:2rem;margin-right:2rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.-mb-px{margin-bottom:-1px}.-ml-1{margin-left:-.25rem}.-mt-8{margin-top:-2rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.ml-8{margin-left:2rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.list-item{display:list-item}.hidden{display:none}.h-0{height:0}.h-1{height:.25rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-28{height:7rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-80{height:20rem}.h-96{height:24rem}.h-full{height:100%}.max-h-64{max-height:16rem}.max-h-96{max-height:24rem}.max-h-\[90vh\]{max-height:90vh}.min-h-\[80vh\]{min-height:80vh}.min-h-screen{min-height:100vh}.w-0{width:0}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-96{width:24rem}.w-full{width:100%}.min-w-0{min-width:0}.min-w-40{min-width:10rem}.min-w-\[150px\]{min-width:150px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x:-100%}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.translate-x-6{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-6{--tw-translate-x:1.5rem}.translate-x-full{--tw-translate-x:100%}.rotate-0,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-0{--tw-rotate:0deg}.rotate-90{--tw-rotate:90deg}.rotate-90,.skew-x-12{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.skew-x-12{--tw-skew-x:12deg}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-100,.scale-75{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-75{--tw-scale-x:.75;--tw-scale-y:.75}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.scale-95,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn .5s ease-in-out}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.animate-slide-up{animation:slideUp .3s ease-out}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.scroll-mt-8{scroll-margin-top:2rem}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1.5rem*var(--tw-space-x-reverse));margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)))}.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(2rem*var(--tw-space-x-reverse));margin-left:calc(2rem*(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-16>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(4rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.divide-slate-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(226 232 240/var(--tw-divide-opacity,1))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:16px}.rounded-3xl{border-radius:24px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:12px}.rounded-b-3xl{border-bottom-right-radius:24px;border-bottom-left-radius:24px}.rounded-l-md{border-top-left-radius:.375rem;border-bottom-left-radius:.375rem}.rounded-r-md{border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.rounded-t-3xl{border-top-left-radius:24px;border-top-right-radius:24px}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-r-4{border-right-width:4px}.border-t{border-top-width:1px}.border-t-4{border-top-width:4px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.border-blue-200\/50{border-color:rgba(191,219,254,.5)}.border-blue-300{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-blue-600{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.border-emerald-200\/50{border-color:rgba(167,243,208,.5)}.border-emerald-500{--tw-border-opacity:1;border-color:rgb(16 185 129/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-200\/50{border-color:rgba(229,231,235,.5)}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity,1))}.border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.border-green-200\/50{border-color:rgba(187,247,208,.5)}.border-green-300{--tw-border-opacity:1;border-color:rgb(134 239 172/var(--tw-border-opacity,1))}.border-green-400{--tw-border-opacity:1;border-color:rgb(74 222 128/var(--tw-border-opacity,1))}.border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.border-green-600{--tw-border-opacity:1;border-color:rgb(22 163 74/var(--tw-border-opacity,1))}.border-indigo-200{--tw-border-opacity:1;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.border-indigo-200\/50{border-color:rgba(199,210,254,.5)}.border-mercedes-blue{--tw-border-opacity:1;border-color:rgb(0 115 206/var(--tw-border-opacity,1))}.border-mercedes-silver{--tw-border-opacity:1;border-color:rgb(170 169 173/var(--tw-border-opacity,1))}.border-orange-200{--tw-border-opacity:1;border-color:rgb(254 215 170/var(--tw-border-opacity,1))}.border-orange-200\/50{border-color:hsla(32,98%,83%,.5)}.border-orange-300{--tw-border-opacity:1;border-color:rgb(253 186 116/var(--tw-border-opacity,1))}.border-orange-400{--tw-border-opacity:1;border-color:rgb(251 146 60/var(--tw-border-opacity,1))}.border-purple-200{--tw-border-opacity:1;border-color:rgb(233 213 255/var(--tw-border-opacity,1))}.border-purple-200\/50{border-color:rgba(233,213,255,.5)}.border-purple-600{--tw-border-opacity:1;border-color:rgb(147 51 234/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-red-200\/50{border-color:hsla(0,96%,89%,.5)}.border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.border-red-400{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.border-slate-200\/50{border-color:rgba(226,232,240,.5)}.border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity,1))}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.border-white\/20{border-color:hsla(0,0%,100%,.2)}.border-white\/30{border-color:hsla(0,0%,100%,.3)}.border-white\/50{border-color:hsla(0,0%,100%,.5)}.border-yellow-200{--tw-border-opacity:1;border-color:rgb(254 240 138/var(--tw-border-opacity,1))}.border-yellow-300{--tw-border-opacity:1;border-color:rgb(253 224 71/var(--tw-border-opacity,1))}.border-yellow-400{--tw-border-opacity:1;border-color:rgb(250 204 21/var(--tw-border-opacity,1))}.border-yellow-500{--tw-border-opacity:1;border-color:rgb(234 179 8/var(--tw-border-opacity,1))}.border-t-slate-800{--tw-border-opacity:1;border-top-color:rgb(30 41 59/var(--tw-border-opacity,1))}.border-t-slate-900{--tw-border-opacity:1;border-top-color:rgb(15 23 42/var(--tw-border-opacity,1))}.border-t-transparent{border-top-color:transparent}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\/20{background-color:rgba(0,0,0,.2)}.bg-black\/30{background-color:rgba(0,0,0,.3)}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-black\/60{background-color:rgba(0,0,0,.6)}.bg-black\/70{background-color:rgba(0,0,0,.7)}.bg-black\/75{background-color:rgba(0,0,0,.75)}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-400{--tw-bg-opacity:1;background-color:rgb(96 165 250/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-50\/50{background-color:rgba(239,246,255,.5)}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-cyan-100{--tw-bg-opacity:1;background-color:rgb(207 250 254/var(--tw-bg-opacity,1))}.bg-emerald-100{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.bg-error{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.bg-green-400{--tw-bg-opacity:1;background-color:rgb(74 222 128/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-green-50\/50{background-color:rgba(240,253,244,.5)}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-green-600{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.bg-indigo-100{--tw-bg-opacity:1;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.bg-indigo-50{--tw-bg-opacity:1;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.bg-indigo-50\/50{background-color:rgba(238,242,255,.5)}.bg-indigo-500{--tw-bg-opacity:1;background-color:rgb(99 102 241/var(--tw-bg-opacity,1))}.bg-indigo-600{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.bg-info{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-mercedes-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-mercedes-blue{--tw-bg-opacity:1;background-color:rgb(0 115 206/var(--tw-bg-opacity,1))}.bg-mercedes-silver{--tw-bg-opacity:1;background-color:rgb(170 169 173/var(--tw-bg-opacity,1))}.bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.bg-orange-400{--tw-bg-opacity:1;background-color:rgb(251 146 60/var(--tw-bg-opacity,1))}.bg-orange-50{--tw-bg-opacity:1;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-orange-50\/50{background-color:rgba(255,247,237,.5)}.bg-orange-500{--tw-bg-opacity:1;background-color:rgb(249 115 22/var(--tw-bg-opacity,1))}.bg-orange-600{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity,1))}.bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.bg-purple-400{--tw-bg-opacity:1;background-color:rgb(192 132 252/var(--tw-bg-opacity,1))}.bg-purple-50{--tw-bg-opacity:1;background-color:rgb(250 245 255/var(--tw-bg-opacity,1))}.bg-purple-50\/50{background-color:rgba(250,245,255,.5)}.bg-purple-500{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.bg-purple-600{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-50\/50{background-color:hsla(0,86%,97%,.5)}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.bg-slate-300{--tw-bg-opacity:1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.bg-slate-400{--tw-bg-opacity:1;background-color:rgb(148 163 184/var(--tw-bg-opacity,1))}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-slate-50\/50{background-color:rgba(248,250,252,.5)}.bg-slate-500{--tw-bg-opacity:1;background-color:rgb(100 116 139/var(--tw-bg-opacity,1))}.bg-slate-600{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity,1))}.bg-slate-700{--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-success{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-teal-100{--tw-bg-opacity:1;background-color:rgb(204 251 241/var(--tw-bg-opacity,1))}.bg-teal-500{--tw-bg-opacity:1;background-color:rgb(20 184 166/var(--tw-bg-opacity,1))}.bg-warning{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color:hsla(0,0%,100%,.1)}.bg-white\/15{background-color:hsla(0,0%,100%,.15)}.bg-white\/20{background-color:hsla(0,0%,100%,.2)}.bg-white\/40{background-color:hsla(0,0%,100%,.4)}.bg-white\/60{background-color:hsla(0,0%,100%,.6)}.bg-white\/80{background-color:hsla(0,0%,100%,.8)}.bg-white\/90{background-color:hsla(0,0%,100%,.9)}.bg-yellow-100{--tw-bg-opacity:1;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.bg-yellow-400{--tw-bg-opacity:1;background-color:rgb(250 204 21/var(--tw-bg-opacity,1))}.bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.bg-yellow-500{--tw-bg-opacity:1;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}.bg-yellow-600{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.bg-opacity-50{--tw-bg-opacity:0.5}.bg-opacity-75{--tw-bg-opacity:0.75}.bg-opacity-95{--tw-bg-opacity:0.95}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-tr{background-image:linear-gradient(to top right,var(--tw-gradient-stops))}.from-amber-500{--tw-gradient-from:#f59e0b var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-100{--tw-gradient-from:#dbeafe var(--tw-gradient-from-position);--tw-gradient-to:rgba(219,234,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-300\/10{--tw-gradient-from:rgba(147,197,253,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(147,197,253,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-400{--tw-gradient-from:#60a5fa var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-400\/20{--tw-gradient-from:rgba(96,165,250,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-50{--tw-gradient-from:#eff6ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(239,246,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from:#3b82f6 var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,130,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-500\/10{--tw-gradient-from:rgba(59,130,246,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,130,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-600{--tw-gradient-from:#2563eb var(--tw-gradient-from-position);--tw-gradient-to:rgba(37,99,235,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-600\/10{--tw-gradient-from:rgba(37,99,235,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(37,99,235,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-400{--tw-gradient-from:#34d399 var(--tw-gradient-from-position);--tw-gradient-to:rgba(52,211,153,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-50{--tw-gradient-from:#ecfdf5 var(--tw-gradient-from-position);--tw-gradient-to:rgba(236,253,245,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-100{--tw-gradient-from:#dcfce7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(220,252,231,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-50{--tw-gradient-from:#f0fdf4 var(--tw-gradient-from-position);--tw-gradient-to:rgba(240,253,244,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-500{--tw-gradient-from:#22c55e var(--tw-gradient-from-position);--tw-gradient-to:rgba(34,197,94,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-500\/10{--tw-gradient-from:rgba(34,197,94,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(34,197,94,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-indigo-500{--tw-gradient-from:#6366f1 var(--tw-gradient-from-position);--tw-gradient-to:rgba(99,102,241,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-50{--tw-gradient-from:#fff7ed var(--tw-gradient-from-position);--tw-gradient-to:rgba(255,247,237,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-500{--tw-gradient-from:#f97316 var(--tw-gradient-from-position);--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-500\/10{--tw-gradient-from:rgba(249,115,22,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-100{--tw-gradient-from:#f3e8ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(243,232,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-400\/20{--tw-gradient-from:rgba(192,132,252,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(192,132,252,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-50{--tw-gradient-from:#faf5ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(250,245,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-500\/10{--tw-gradient-from:rgba(168,85,247,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-500{--tw-gradient-from:#ef4444 var(--tw-gradient-from-position);--tw-gradient-to:rgba(239,68,68,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-500\/10{--tw-gradient-from:rgba(239,68,68,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(239,68,68,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-100{--tw-gradient-from:#f1f5f9 var(--tw-gradient-from-position);--tw-gradient-to:rgba(241,245,249,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-50{--tw-gradient-from:#f8fafc var(--tw-gradient-from-position);--tw-gradient-to:rgba(248,250,252,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-500{--tw-gradient-from:#64748b var(--tw-gradient-from-position);--tw-gradient-to:rgba(100,116,139,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-900{--tw-gradient-from:#0f172a var(--tw-gradient-from-position);--tw-gradient-to:rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-transparent{--tw-gradient-from:transparent var(--tw-gradient-from-position);--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-white{--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from:#eab308 var(--tw-gradient-from-position);--tw-gradient-to:rgba(234,179,8,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-blue-100{--tw-gradient-to:rgba(219,234,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#dbeafe var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-blue-200{--tw-gradient-to:rgba(191,219,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#bfdbfe var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-blue-50{--tw-gradient-to:rgba(239,246,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#eff6ff var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-blue-900{--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#1e3a8a var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-green-50{--tw-gradient-to:rgba(240,253,244,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#f0fdf4 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-green-500{--tw-gradient-to:rgba(34,197,94,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#22c55e var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-indigo-50{--tw-gradient-to:rgba(238,242,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#eef2ff var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-purple-500{--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#a855f7 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-red-50{--tw-gradient-to:hsla(0,86%,97%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fef2f2 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white\/20{--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),hsla(0,0%,100%,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white\/5{--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),hsla(0,0%,100%,.05) var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-amber-600{--tw-gradient-to:#d97706 var(--tw-gradient-to-position)}.to-blue-200{--tw-gradient-to:#bfdbfe var(--tw-gradient-to-position)}.to-blue-50{--tw-gradient-to:#eff6ff var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.to-emerald-50{--tw-gradient-to:#ecfdf5 var(--tw-gradient-to-position)}.to-emerald-500{--tw-gradient-to:#10b981 var(--tw-gradient-to-position)}.to-emerald-500\/10{--tw-gradient-to:rgba(16,185,129,.1) var(--tw-gradient-to-position)}.to-emerald-600{--tw-gradient-to:#059669 var(--tw-gradient-to-position)}.to-green-200{--tw-gradient-to:#bbf7d0 var(--tw-gradient-to-position)}.to-green-50{--tw-gradient-to:#f0fdf4 var(--tw-gradient-to-position)}.to-green-600{--tw-gradient-to:#16a34a var(--tw-gradient-to-position)}.to-indigo-100{--tw-gradient-to:#e0e7ff var(--tw-gradient-to-position)}.to-indigo-300\/10{--tw-gradient-to:rgba(165,180,252,.1) var(--tw-gradient-to-position)}.to-indigo-50{--tw-gradient-to:#eef2ff var(--tw-gradient-to-position)}.to-indigo-500{--tw-gradient-to:#6366f1 var(--tw-gradient-to-position)}.to-indigo-500\/10{--tw-gradient-to:rgba(99,102,241,.1) var(--tw-gradient-to-position)}.to-indigo-600{--tw-gradient-to:#4f46e5 var(--tw-gradient-to-position)}.to-indigo-600\/20{--tw-gradient-to:rgba(79,70,229,.2) var(--tw-gradient-to-position)}.to-indigo-900{--tw-gradient-to:#312e81 var(--tw-gradient-to-position)}.to-orange-50{--tw-gradient-to:#fff7ed var(--tw-gradient-to-position)}.to-orange-500{--tw-gradient-to:#f97316 var(--tw-gradient-to-position)}.to-orange-600{--tw-gradient-to:#ea580c var(--tw-gradient-to-position)}.to-pink-50{--tw-gradient-to:#fdf2f8 var(--tw-gradient-to-position)}.to-pink-500\/10{--tw-gradient-to:rgba(236,72,153,.1) var(--tw-gradient-to-position)}.to-pink-600\/20{--tw-gradient-to:rgba(219,39,119,.2) var(--tw-gradient-to-position)}.to-purple-200{--tw-gradient-to:#e9d5ff var(--tw-gradient-to-position)}.to-purple-50{--tw-gradient-to:#faf5ff var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to:#9333ea var(--tw-gradient-to-position)}.to-purple-600\/10{--tw-gradient-to:rgba(147,51,234,.1) var(--tw-gradient-to-position)}.to-red-50{--tw-gradient-to:#fef2f2 var(--tw-gradient-to-position)}.to-red-500{--tw-gradient-to:#ef4444 var(--tw-gradient-to-position)}.to-red-500\/10{--tw-gradient-to:rgba(239,68,68,.1) var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to:#dc2626 var(--tw-gradient-to-position)}.to-rose-500{--tw-gradient-to:#f43f5e var(--tw-gradient-to-position)}.to-slate-100{--tw-gradient-to:#f1f5f9 var(--tw-gradient-to-position)}.to-slate-200{--tw-gradient-to:#e2e8f0 var(--tw-gradient-to-position)}.to-slate-600{--tw-gradient-to:#475569 var(--tw-gradient-to-position)}.to-slate-700{--tw-gradient-to:#334155 var(--tw-gradient-to-position)}.to-teal-50{--tw-gradient-to:#f0fdfa var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.to-violet-500\/10{--tw-gradient-to:rgba(139,92,246,.1) var(--tw-gradient-to-position)}.to-white{--tw-gradient-to:#fff var(--tw-gradient-to-position)}.to-yellow-600{--tw-gradient-to:#ca8a04 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.fill-current{fill:currentColor}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-12{padding-bottom:3rem}.pb-20{padding-bottom:5rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pb-8{padding-bottom:2rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-10{padding-right:2.5rem}.pr-12{padding-right:3rem}.pr-20{padding-right:5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.font-mercedes{font-family:Mercedes-Benz Text,Arial,sans-serif}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-8xl{font-size:6rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-4{line-height:1rem}.leading-6{line-height:1.5rem}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-amber-900{--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-blue-100{--tw-text-opacity:1;color:rgb(219 234 254/var(--tw-text-opacity,1))}.text-blue-200{--tw-text-opacity:1;color:rgb(191 219 254/var(--tw-text-opacity,1))}.text-blue-300{--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-blue-900{--tw-text-opacity:1;color:rgb(30 58 138/var(--tw-text-opacity,1))}.text-cyan-600{--tw-text-opacity:1;color:rgb(8 145 178/var(--tw-text-opacity,1))}.text-emerald-300{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.text-error{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-gray-200{--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-green-200{--tw-text-opacity:1;color:rgb(187 247 208/var(--tw-text-opacity,1))}.text-green-300{--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-green-900{--tw-text-opacity:1;color:rgb(20 83 45/var(--tw-text-opacity,1))}.text-indigo-400{--tw-text-opacity:1;color:rgb(129 140 248/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-indigo-800{--tw-text-opacity:1;color:rgb(55 48 163/var(--tw-text-opacity,1))}.text-indigo-900{--tw-text-opacity:1;color:rgb(49 46 129/var(--tw-text-opacity,1))}.text-mercedes-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-mercedes-blue{--tw-text-opacity:1;color:rgb(0 115 206/var(--tw-text-opacity,1))}.text-mercedes-gray{--tw-text-opacity:1;color:rgb(94 94 94/var(--tw-text-opacity,1))}.text-mercedes-silver{--tw-text-opacity:1;color:rgb(170 169 173/var(--tw-text-opacity,1))}.text-orange-500{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity,1))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity,1))}.text-orange-700{--tw-text-opacity:1;color:rgb(194 65 12/var(--tw-text-opacity,1))}.text-orange-800{--tw-text-opacity:1;color:rgb(154 52 18/var(--tw-text-opacity,1))}.text-pink-600{--tw-text-opacity:1;color:rgb(219 39 119/var(--tw-text-opacity,1))}.text-purple-500{--tw-text-opacity:1;color:rgb(168 85 247/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-purple-800{--tw-text-opacity:1;color:rgb(107 33 168/var(--tw-text-opacity,1))}.text-purple-900{--tw-text-opacity:1;color:rgb(88 28 135/var(--tw-text-opacity,1))}.text-red-200{--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity,1))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-red-900{--tw-text-opacity:1;color:rgb(127 29 29/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.text-slate-800{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.text-success{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity,1))}.text-teal-600{--tw-text-opacity:1;color:rgb(13 148 136/var(--tw-text-opacity,1))}.text-transparent{color:transparent}.text-warning{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-yellow-200{--tw-text-opacity:1;color:rgb(254 240 138/var(--tw-text-opacity,1))}.text-yellow-300{--tw-text-opacity:1;color:rgb(253 224 71/var(--tw-text-opacity,1))}.text-yellow-400{--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity,1))}.text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity,1))}.text-yellow-600{--tw-text-opacity:1;color:rgb(202 138 4/var(--tw-text-opacity,1))}.text-yellow-700{--tw-text-opacity:1;color:rgb(161 98 7/var(--tw-text-opacity,1))}.text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14/var(--tw-text-opacity,1))}.text-yellow-900{--tw-text-opacity:1;color:rgb(113 63 18/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.overline{text-decoration-line:overline}.placeholder-slate-500::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(100 116 139/var(--tw-placeholder-opacity,1))}.placeholder-slate-500::placeholder{--tw-placeholder-opacity:1;color:rgb(100 116 139/var(--tw-placeholder-opacity,1))}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow-inner,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-2{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-mercedes-blue{--tw-ring-opacity:1;--tw-ring-color:rgb(0 115 206/var(--tw-ring-opacity,1))}.blur{--tw-blur:blur(8px)}.blur,.blur-2xl{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-2xl{--tw-blur:blur(40px)}.blur-3xl{--tw-blur:blur(64px)}.blur-3xl,.drop-shadow{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06))}.\!filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-md,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px)}.backdrop-blur-xl,.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.delay-1000{transition-delay:1s}.delay-500{transition-delay:.5s}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.glassmorphism{background:hsla(0,0%,100%,.05);border-radius:16px;box-shadow:0 8px 32px 0 rgba(31,38,135,.37);border:1px solid hsla(0,0%,100%,.18)}.glassmorphism,.glassmorphism-dark{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.glassmorphism-dark{background:rgba(0,0,0,.05);border-radius:16px;box-shadow:0 8px 32px 0 rgba(0,0,0,.37);border:1px solid rgba(0,0,0,.18)}.text-shadow{text-shadow:0 2px 4px rgba(0,0,0,.1)}.flash-message{position:fixed;top:1rem;right:1rem;z-index:50;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:16px;border-width:1px;padding:1rem 1.5rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s;background:hsla(0,0%,100%,.08);backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);-webkit-backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);border:1px solid hsla(0,0%,100%,.25);box-shadow:0 32px 64px rgba(0,0,0,.25),0 12px 24px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px hsla(0,0%,100%,.1);animation:flash-slide-in .5s cubic-bezier(.4,0,.2,1);transition:all .5s cubic-bezier(.4,0,.2,1)}.dark .flash-message{background:rgba(0,0,0,.2);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 32px 64px rgba(0,0,0,.6),0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.flash-message:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 40px 80px rgba(0,0,0,.3),0 16px 32px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px hsla(0,0%,100%,.15)}.dark .flash-message:hover{box-shadow:0 40px 80px rgba(0,0,0,.7),0 16px 32px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1)}.flash-message.info{--tw-text-opacity:1;color:rgb(219 234 254/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(59,130,246,.2),rgba(147,197,253,.15) 50%,rgba(59,130,246,.1));border:1px solid rgba(59,130,246,.3)}.flash-message.success{--tw-text-opacity:1;color:rgb(220 252 231/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(34,197,94,.2),rgba(134,239,172,.15) 50%,rgba(34,197,94,.1));border:1px solid rgba(34,197,94,.3)}.flash-message.warning{--tw-text-opacity:1;color:rgb(254 249 195/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(245,158,11,.2),rgba(252,211,77,.15) 50%,rgba(245,158,11,.1));border:1px solid rgba(245,158,11,.3)}.flash-message.error{--tw-text-opacity:1;color:rgb(254 226 226/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(239,68,68,.2),hsla(0,94%,82%,.15) 50%,rgba(239,68,68,.1));border:1px solid rgba(239,68,68,.3)}@keyframes flash-slide-in{0%{opacity:0;transform:translateX(100%) translateY(-20px) scale(.9);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}50%{opacity:.8;transform:translateX(20px) translateY(-10px) scale(1.05);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}to{opacity:1;transform:translateX(0) translateY(0) scale(1);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px)}}@keyframes flash-slide-out{0%{opacity:1;transform:translateX(0) translateY(0) scale(1)}to{opacity:0;transform:translateX(100%) translateY(-20px) scale(.9)}}.flash-message.hiding{animation:flash-slide-out .4s cubic-bezier(.4,0,.2,1) forwards}.dnd-toggle{position:relative;display:inline-flex;height:1.5rem;width:2.75rem;align-items:center;border-radius:9999px;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.dnd-toggle:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1));--tw-ring-offset-width:2px}.dnd-toggle{background:rgba(156,163,175,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(156,163,175,.2)}.dnd-toggle.active{background:rgba(239,68,68,.3);border:1px solid rgba(239,68,68,.4)}.dnd-toggle-slider{display:inline-block;height:1rem;width:1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:9999px;--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:hsla(0,0%,100%,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 4px 8px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.1);margin:.125rem}.dnd-toggle.active .dnd-toggle-slider{transform:translateX(1.25rem);background:#fff;box-shadow:0 6px 12px rgba(239,68,68,.3),0 3px 6px rgba(239,68,68,.2)}.dnd-indicator{position:fixed;top:1rem;left:1rem;z-index:50;display:flex;align-items:center;border-radius:.5rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:rgba(239,68,68,.1);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);border:1px solid rgba(239,68,68,.3);color:#ef4444;transform:translateY(-100%);opacity:0}.dnd-indicator.active{transform:translateY(0);opacity:1}.dnd-modal{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(0,0,0,.3);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.dnd-modal-content{width:100%;max-width:28rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:16px;padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background:hsla(0,0%,100%,.1);backdrop-filter:blur(40px) saturate(200%) brightness(120%);-webkit-backdrop-filter:blur(40px) saturate(200%) brightness(120%);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 25px 50px rgba(0,0,0,.25),0 8px 16px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.4)}.dark .dnd-modal-content{background:rgba(0,0,0,.3);backdrop-filter:blur(40px) saturate(180%) brightness(110%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(110%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 25px 50px rgba(0,0,0,.6),0 8px 16px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2)}.flash-message.dnd-suppressed{animation:flash-fade-in .3s ease-out;opacity:.3;transform:scale(.95);pointer-events:none}@keyframes flash-fade-in{0%{opacity:0;transform:scale(.9)}to{opacity:.3;transform:scale(.95)}}.dnd-counter{position:absolute;top:-.5rem;right:-.5rem;display:flex;height:1.25rem;width:1.25rem;align-items:center;justify-content:center;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1));font-size:.75rem;line-height:1rem;font-weight:700;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));background:rgba(239,68,68,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);animation:dnd-counter-bounce .5s ease-out}@keyframes dnd-counter-bounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.mercedes-background:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' fill='currentColor' opacity='.03'%3E%3Cpath d='M58.6 4.5C53 1.6 46.7 0 40 0S27 1.6 21.4 4.5C8.7 11.2 0 24.6 0 40s8.7 28.8 21.5 35.5C27 78.3 33.3 80 40 80s12.9-1.7 18.5-4.6C71.3 68.8 80 55.4 80 40S71.3 11.2 58.6 4.5M4 40c0-13.1 7-24.5 17.5-30.9C26.6 6 32.5 4.2 39 4l-4.5 32.7-13 10.1L8.3 57.1C5.6 52 4 46.2 4 40m54.6 30.8C53.1 74.1 46.8 76 40 76s-13.2-1.9-18.6-5.2c-4.9-2.9-8.9-6.9-11.9-11.7l11.9-4.9L40 46.6l18.6 7.5 12 4.9c-3 4.9-7.2 8.9-12 11.8m0-24-12.9-10L41.1 4c6.3.2 12.3 2 17.4 5.1C69 15.4 76 26.9 76 40c0 6.2-1.5 12-4.3 17.1z'/%3E%3C/svg%3E");background-position:50%;background-repeat:repeat;background-size:120px 120px;pointer-events:none;opacity:.03;transition:opacity .3s ease}.dark .mercedes-background:before{opacity:.015;filter:invert(1) brightness(.3);background-size:150px 150px}.navbar{position:sticky!important;top:0!important;z-index:50!important;width:100%!important;left:0!important;right:0!important;--navbar-blur:40px;--navbar-opacity:0.15;background:rgba(255,255,255,var(--navbar-opacity,.15))!important;backdrop-filter:blur(var(--navbar-blur,40px)) saturate(200%) brightness(110%) contrast(105%)!important;-webkit-backdrop-filter:blur(var(--navbar-blur,40px)) saturate(200%) brightness(110%) contrast(105%)!important;box-shadow:0 8px 32px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.15)!important;border-bottom:1px solid hsla(0,0%,100%,.2)!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.dark .navbar{--navbar-dark-opacity:0.25;background:rgba(0,0,0,var(--navbar-dark-opacity,.25))!important;backdrop-filter:blur(calc(var(--navbar-blur, 40px) + 5px)) saturate(180%) brightness(120%) contrast(115%)!important;-webkit-backdrop-filter:blur(calc(var(--navbar-blur, 40px) + 5px)) saturate(180%) brightness(120%) contrast(115%)!important;box-shadow:0 8px 32px rgba(0,0,0,.4),0 2px 8px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.15),0 0 0 1px hsla(0,0%,100%,.08)!important;border-bottom:1px solid hsla(0,0%,100%,.1)!important}.navbar.scrolled{--navbar-blur:50px;--navbar-opacity:0.25;background:rgba(255,255,255,var(--navbar-opacity,.25))!important;backdrop-filter:blur(var(--navbar-blur,50px)) saturate(220%) brightness(115%) contrast(110%)!important;-webkit-backdrop-filter:blur(var(--navbar-blur,50px)) saturate(220%) brightness(115%) contrast(110%)!important;box-shadow:0 12px 40px rgba(0,0,0,.15),0 4px 12px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px hsla(0,0%,100%,.2)!important}.dark .navbar.scrolled{--navbar-dark-opacity:0.35;background:rgba(0,0,0,var(--navbar-dark-opacity,.35))!important;backdrop-filter:blur(calc(var(--navbar-blur, 50px) + 5px)) saturate(200%) brightness(125%) contrast(120%)!important;-webkit-backdrop-filter:blur(calc(var(--navbar-blur, 50px) + 5px)) saturate(200%) brightness(125%) contrast(120%)!important;box-shadow:0 12px 40px rgba(0,0,0,.5),0 4px 12px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.1)!important}.navbar-menu-new{display:flex;align-items:center;justify-content:center}.navbar-menu-new>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.125rem*var(--tw-space-x-reverse));margin-left:calc(.125rem*(1 - var(--tw-space-x-reverse)))}@media (min-width:768px){.navbar-menu-new>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}}.navbar-menu-new{max-width:100%;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;background:hsla(0,0%,100%,.1);backdrop-filter:blur(25px) saturate(170%) brightness(108%);-webkit-backdrop-filter:blur(25px) saturate(170%) brightness(108%);border-radius:16px;padding:8px;margin:0 16px;border:1px solid hsla(0,0%,100%,.15);box-shadow:0 6px 20px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05);transition:all .3s cubic-bezier(.4,0,.2,1)}.dark .navbar-menu-new{background:rgba(0,0,0,.2);backdrop-filter:blur(30px) saturate(150%) brightness(115%);-webkit-backdrop-filter:blur(30px) saturate(150%) brightness(115%);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 6px 20px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.1),0 0 0 1px hsla(0,0%,100%,.03)}.navbar-menu-new::-webkit-scrollbar{display:none}.navbar-menu-new:hover{backdrop-filter:blur(35px) saturate(190%) brightness(112%);-webkit-backdrop-filter:blur(35px) saturate(190%) brightness(112%);box-shadow:0 8px 25px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1);transform:translateY(-1px)}.dark .navbar-menu-new:hover{backdrop-filter:blur(40px) saturate(170%) brightness(120%);-webkit-backdrop-filter:blur(40px) saturate(170%) brightness(120%);box-shadow:0 8px 25px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.15),0 0 0 1px hsla(0,0%,100%,.05)}.nav-item{display:flex;align-items:center}.nav-item>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.375rem*var(--tw-space-x-reverse));margin-left:calc(.375rem*(1 - var(--tw-space-x-reverse)))}.nav-item{border-radius:12px;padding:.625rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;color:rgba(15,23,42,.85);background:hsla(0,0%,100%,.08);backdrop-filter:blur(15px) saturate(140%);-webkit-backdrop-filter:blur(15px) saturate(140%);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 4px 12px rgba(0,0,0,.05),inset 0 1px 0 hsla(0,0%,100%,.15);position:relative;overflow:hidden;animation:nav-item-entrance .6s ease-out}.nav-item:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);transition:left .5s}.nav-item:hover:before{left:100%}.nav-item:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg at 50% 50%,transparent 0deg,hsla(0,0%,100%,.1) 30deg,transparent 60deg);opacity:0;transition:opacity .3s ease;pointer-events:none;animation:rotate 3s linear infinite}.nav-item:hover:after{opacity:1}.dark .nav-item{color:hsla(0,0%,100%,.85);background:rgba(0,0,0,.15);backdrop-filter:blur(20px) saturate(130%);-webkit-backdrop-filter:blur(20px) saturate(130%);border:1px solid hsla(0,0%,100%,.08);box-shadow:0 4px 12px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.08)}.nav-item:hover{color:#0f172a;background:hsla(0,0%,100%,.2);backdrop-filter:blur(25px) saturate(160%) brightness(110%);-webkit-backdrop-filter:blur(25px) saturate(160%) brightness(110%);border:1px solid hsla(0,0%,100%,.25);box-shadow:0 8px 20px rgba(0,0,0,.12),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1);transform:translateY(-2px) scale(1.02)}.dark .nav-item:hover{color:#fff;background:rgba(0,0,0,.25);backdrop-filter:blur(30px) saturate(150%) brightness(120%);-webkit-backdrop-filter:blur(30px) saturate(150%) brightness(120%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 8px 20px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.15),0 0 0 1px hsla(0,0%,100%,.05)}.nav-item.active{color:#0f172a;background:hsla(0,0%,100%,.35);backdrop-filter:blur(35px) saturate(180%) brightness(115%);-webkit-backdrop-filter:blur(35px) saturate(180%) brightness(115%);border:1px solid hsla(0,0%,100%,.4);box-shadow:0 12px 24px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px rgba(59,130,246,.3);transform:translateY(-1px);animation:nav-item-active-glow 2s ease-in-out infinite alternate}.dark .nav-item.active{color:#fff;background:rgba(0,0,0,.4);backdrop-filter:blur(40px) saturate(160%) brightness(125%);-webkit-backdrop-filter:blur(40px) saturate(160%) brightness(125%);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px rgba(59,130,246,.2)}@keyframes nav-item-entrance{0%{opacity:0;transform:translateY(10px) scale(.95);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}to{opacity:1;transform:translateY(0) scale(1);-webkit-backdrop-filter:blur(15px) saturate(140%);backdrop-filter:blur(15px) saturate(140%)}}@keyframes nav-item-active-glow{0%{box-shadow:0 12px 24px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px rgba(59,130,246,.3)}to{box-shadow:0 16px 32px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.6),0 0 0 2px rgba(59,130,246,.5)}}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.navbar:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,hsla(0,0%,100%,.1) 1px,transparent 0),radial-gradient(circle at 80% 50%,hsla(0,0%,100%,.1) 1px,transparent 0),radial-gradient(circle at 40% 20%,hsla(0,0%,100%,.05) 1px,transparent 0),radial-gradient(circle at 60% 80%,hsla(0,0%,100%,.05) 1px,transparent 0);opacity:0;animation:glassmorphism-particles 8s ease-in-out infinite;pointer-events:none}.dark .navbar:before{background:radial-gradient(circle at 20% 50%,hsla(0,0%,100%,.05) 1px,transparent 0),radial-gradient(circle at 80% 50%,hsla(0,0%,100%,.05) 1px,transparent 0),radial-gradient(circle at 40% 20%,hsla(0,0%,100%,.03) 1px,transparent 0),radial-gradient(circle at 60% 80%,hsla(0,0%,100%,.03) 1px,transparent 0)}@keyframes glassmorphism-particles{0%,to{opacity:0;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.dark-mode-toggle-new{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:9999px;padding:.5rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:rgba(241,245,249,.8);border:1px solid hsla(0,0%,100%,.7);box-shadow:0 2px 8px rgba(0,0,0,.05),0 1px 2px rgba(0,0,0,.04);color:#334155;z-index:100}.dark-mode-toggle-new:hover{--tw-translate-y:-0.125rem;background:rgba(241,245,249,.9);box-shadow:0 8px 16px rgba(0,0,0,.08),0 2px 4px rgba(0,0,0,.06)}.dark-mode-toggle-new:active,.dark-mode-toggle-new:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark-mode-toggle-new:active{--tw-scale-x:.95;--tw-scale-y:.95;transition:transform .1s}.dark .dark-mode-toggle-new{background:rgba(30,41,59,.8);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 2px 8px rgba(0,0,0,.2),0 1px 2px rgba(0,0,0,.1);color:#e2e8f0}.dark .dark-mode-toggle-new:hover{background:rgba(30,41,59,.9);box-shadow:0 8px 16px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.15)}.dark-mode-toggle-new .moon-icon,.dark-mode-toggle-new .sun-icon{position:absolute;top:50%;left:50%;--tw-translate-x:-50%;--tw-translate-y:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.dark-mode-toggle-new .moon-icon:not(.hidden),.dark-mode-toggle-new .sun-icon:not(.hidden){animation:spin-in .5s cubic-bezier(.25,1,.5,1) forwards}@keyframes spin-in{0%{opacity:0;transform:translateY(10px) scale(.7) rotate(20deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}.dark .sun-icon{display:none}.dark .moon-icon,.sun-icon{display:block}.moon-icon{display:none}.user-menu-button-new{display:flex;align-items:center}.user-menu-button-new>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.375rem*var(--tw-space-x-reverse));margin-left:calc(.375rem*(1 - var(--tw-space-x-reverse)))}.user-menu-button-new{border-radius:.5rem;padding:.25rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:rgba(241,245,249,.6);border:1px solid hsla(0,0%,100%,.6);box-shadow:0 2px 8px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02)}.user-menu-button-new:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));background:rgba(241,245,249,.8);box-shadow:0 8px 16px rgba(0,0,0,.06),0 2px 4px rgba(0,0,0,.04)}.dark .user-menu-button-new{background:rgba(30,41,59,.6);border:1px solid hsla(0,0%,100%,.08);box-shadow:0 2px 8px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.1)}.dark .user-menu-button-new:hover{background:rgba(30,41,59,.8);box-shadow:0 8px 16px rgba(0,0,0,.15),0 2px 4px rgba(0,0,0,.1)}.user-avatar-new{display:flex;height:1.75rem;width:1.75rem;align-items:center;justify-content:center;border-radius:9999px;font-size:.75rem;line-height:1rem;font-weight:600;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:linear-gradient(135deg,#000,#333);box-shadow:0 2px 4px rgba(0,0,0,.2),0 1px 2px rgba(0,0,0,.1)}.dark .user-avatar-new{background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:#0f172a;box-shadow:0 2px 4px rgba(0,0,0,.3),0 1px 2px rgba(0,0,0,.2)}.login-button-new{display:flex;align-items:center;border-radius:.5rem;padding:.375rem .75rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:#000;color:#fff;border:1px solid hsla(0,0%,100%,.1);box-shadow:0 2px 8px rgba(0,0,0,.1),0 1px 2px rgba(0,0,0,.08)}.login-button-new:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));background:#333;box-shadow:0 8px 16px rgba(0,0,0,.15),0 3px 4px rgba(0,0,0,.1)}.dark .login-button-new{background:#fff;color:#000;border:1px solid rgba(0,0,0,.1);box-shadow:0 2px 8px rgba(0,0,0,.2),0 1px 2px rgba(0,0,0,.15)}.dark .login-button-new:hover{background:#f1f5f9;box-shadow:0 8px 16px rgba(0,0,0,.25),0 3px 4px rgba(0,0,0,.2)}.mobile-menu-new{z-index:40;width:100%;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:hsla(0,0%,100%,.8);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 4px 20px rgba(0,0,0,.06);max-height:0;opacity:0}.mobile-menu-new,.mobile-menu-new.open{border-bottom:1px solid rgba(241,245,249,.8)}.mobile-menu-new.open{max-height:400px;opacity:1}.dark .mobile-menu-new{background:rgba(15,23,42,.8);box-shadow:0 4px 20px rgba(0,0,0,.2);border-bottom:1px solid rgba(30,41,59,.8)}.mobile-nav-item{display:flex;align-items:center}.mobile-nav-item>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.625rem*var(--tw-space-x-reverse));margin-left:calc(.625rem*(1 - var(--tw-space-x-reverse)))}.mobile-nav-item{border-radius:.5rem;padding:.625rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.mobile-nav-item:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.mobile-nav-item:hover{background:rgba(241,245,249,.8)}.dark .mobile-nav-item:hover{background:rgba(30,41,59,.6)}.mobile-nav-item.active{background:rgba(241,245,249,.9);color:#000;font-weight:500}.dark .mobile-nav-item.active{background:rgba(30,41,59,.8);color:#fff}.mb-stat-card{background:linear-gradient(135deg,rgba(240,249,255,.6),rgba(230,242,255,.6));color:#0f172a;position:relative;overflow:hidden;border:none;border-radius:var(--card-radius);backdrop-filter:blur(20px) saturate(180%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(180%) brightness(110%);box-shadow:0 25px 50px rgba(0,0,0,.15),0 0 0 1px hsla(0,0%,100%,.1);padding:1.5rem;margin:1rem;transition:transform .3s ease,box-shadow .3s ease}.dark .mb-stat-card{background:linear-gradient(135deg,rgba(0,0,0,.7),hsla(0,0%,4%,.7));color:var(--text-primary,#f8fafc);box-shadow:0 25px 50px rgba(0,0,0,.3),0 0 0 1px hsla(0,0%,100%,.05)}.job-card,.stats-card{border-radius:12px;border-width:1px;border-color:rgba(229,231,235,.7);background-color:hsla(0,0%,100%,.6);--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(40px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.job-card:is(.dark *),.stats-card:is(.dark *){border-color:rgba(51,65,85,.2);background-color:rgba(0,0,0,.8)}.job-card,.stats-card{backdrop-filter:blur(24px) saturate(200%) brightness(120%);-webkit-backdrop-filter:blur(24px) saturate(200%) brightness(120%);box-shadow:0 25px 50px rgba(0,0,0,.2),0 0 0 1px hsla(0,0%,100%,.1);border-radius:var(--card-radius)}footer{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:hsla(0,0%,100%,.1);backdrop-filter:blur(30px) saturate(180%) brightness(120%);-webkit-backdrop-filter:blur(30px) saturate(180%) brightness(120%);border-top:1px solid hsla(0,0%,100%,.2);box-shadow:0 -8px 32px rgba(0,0,0,.1),0 -2px 8px rgba(0,0,0,.05),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.dark footer{background:rgba(0,0,0,.3);backdrop-filter:blur(30px) saturate(160%) brightness(110%);-webkit-backdrop-filter:blur(30px) saturate(160%) brightness(110%);border-top:1px solid hsla(0,0%,100%,.1);box-shadow:0 -8px 32px rgba(0,0,0,.3),0 -2px 8px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.1),0 0 0 1px hsla(0,0%,100%,.03)}.dropdown-arrow{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.mercedes-star-bg{position:relative}.mercedes-star-bg:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' fill='currentColor' opacity='.05'%3E%3Cpath d='M58.6 4.5C53 1.6 46.7 0 40 0S27 1.6 21.4 4.5C8.7 11.2 0 24.6 0 40s8.7 28.8 21.5 35.5C27 78.3 33.3 80 40 80s12.9-1.7 18.5-4.6C71.3 68.8 80 55.4 80 40S71.3 11.2 58.6 4.5M4 40c0-13.1 7-24.5 17.5-30.9C26.6 6 32.5 4.2 39 4l-4.5 32.7-13 10.1L8.3 57.1C5.6 52 4 46.2 4 40m54.6 30.8C53.1 74.1 46.8 76 40 76s-13.2-1.9-18.6-5.2c-4.9-2.9-8.9-6.9-11.9-11.7l11.9-4.9L40 46.6l18.6 7.5 12 4.9c-3 4.9-7.2 8.9-12 11.8m0-24-12.9-10L41.1 4c6.3.2 12.3 2 17.4 5.1C69 15.4 76 26.9 76 40c0 6.2-1.5 12-4.3 17.1z'/%3E%3C/svg%3E");background-position:50%;background-repeat:repeat;background-size:40px 40px;z-index:-1;opacity:.05}.dark .mercedes-star-bg:after{opacity:.02;filter:invert(1) brightness(.4)}.glass-effect{backdrop-filter:blur(20px) saturate(180%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(180%) brightness(110%);background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 8px 32px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.3)}.dark .glass-effect{background:rgba(0,0,0,.3);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 8px 32px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.15)}.glass-hover{transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-hover:hover{transform:translateY(-2px);backdrop-filter:blur(25px) saturate(200%) brightness(120%);-webkit-backdrop-filter:blur(25px) saturate(200%) brightness(120%);box-shadow:0 20px 40px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.4)}.dark .glass-hover:hover{box-shadow:0 20px 40px rgba(0,0,0,.4),0 8px 16px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.2)}.printer-card-new{position:relative;overflow:hidden;border-radius:12px;border-width:1px;border-color:rgba(229,231,235,.7);background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from:hsla(0,0%,100%,.9) var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:hsla(0,0%,100%,.7) var(--tw-gradient-to-position);padding:1.25rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(40px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.printer-card-new:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.printer-card-new:is(.dark *){border-color:rgba(51,65,85,.3);--tw-gradient-from:rgba(30,41,59,.9) var(--tw-gradient-from-position);--tw-gradient-to:rgba(30,41,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(15,23,42,.7) var(--tw-gradient-to-position)}.printer-card-new{box-shadow:0 20px 40px rgba(0,0,0,.08),0 10px 20px rgba(0,0,0,.06),0 0 0 1px hsla(0,0%,100%,.1);border-radius:var(--card-radius,1rem)}.dark .printer-card-new{box-shadow:0 20px 40px rgba(0,0,0,.4),0 10px 20px rgba(0,0,0,.3),0 0 0 1px hsla(0,0%,100%,.05)}.printer-card-new.online{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity,1));background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from:rgba(240,253,244,.9) var(--tw-gradient-from-position);--tw-gradient-to:rgba(240,253,244,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(236,253,245,.8) var(--tw-gradient-to-position)}.printer-card-new.online:is(.dark *){border-color:rgba(21,128,61,.5);--tw-gradient-from:rgba(20,83,45,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(20,83,45,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(6,78,59,.2) var(--tw-gradient-to-position)}.printer-card-new.online{box-shadow:0 20px 40px rgba(0,122,85,.08),0 10px 20px rgba(0,122,85,.06),0 0 0 1px rgba(209,250,229,.4)}.dark .printer-card-new.online{box-shadow:0 20px 40px rgba(0,0,0,.3),0 10px 20px rgba(0,0,0,.2),0 0 0 1px rgba(16,185,129,.2)}.status-badge-new{display:inline-flex;align-items:center}.status-badge-new>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.status-badge-new{border-radius:9999px;padding:.25rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);background:hsla(0,0%,100%,.9);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 5px rgba(0,0,0,.05)}.dark .status-badge-new{background:rgba(30,41,59,.7);box-shadow:0 2px 5px rgba(0,0,0,.2)}.status-badge-new.online{background-color:rgba(220,252,231,.9);--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.status-badge-new.online:is(.dark *){background-color:rgba(20,83,45,.6);--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.status-badge-new.offline{background-color:hsla(0,93%,94%,.9);--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.status-badge-new.offline:is(.dark *){background-color:rgba(127,29,29,.6);--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.filter-bar-new{border-radius:.5rem;border-width:1px;border-color:rgba(229,231,235,.6);background-color:hsla(0,0%,100%,.8);padding:.375rem;--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.filter-bar-new:is(.dark *){border-color:rgba(51,65,85,.3);background-color:rgba(30,41,59,.8)}.filter-bar-new{box-shadow:0 10px 25px rgba(0,0,0,.05),0 5px 10px rgba(0,0,0,.03),0 0 0 1px hsla(0,0%,100%,.2)}.dark .filter-bar-new{box-shadow:0 10px 25px rgba(0,0,0,.2),0 5px 10px rgba(0,0,0,.15),0 0 0 1px hsla(0,0%,100%,.05)}.filter-btn-new{border-radius:.375rem;padding:.5rem .875rem;font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.filter-btn-new.active{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter-btn-new.active:is(.dark *){--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.filter-btn-new.active{box-shadow:0 4px 10px rgba(0,0,0,.1)}.dark .filter-btn-new.active{box-shadow:0 4px 10px rgba(0,0,0,.3)}.action-btn-new{display:flex;align-items:center;justify-content:center;gap:.5rem;border-radius:.5rem;padding:.625rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.action-btn-new:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.action-btn-new{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.action-btn-new.primary{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.action-btn-new.primary:hover{--tw-bg-opacity:1;background-color:rgb(67 56 202/var(--tw-bg-opacity,1))}.action-btn-new.primary:is(.dark *){--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.action-btn-new.primary:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(99 102 241/var(--tw-bg-opacity,1))}.action-btn-new.primary{box-shadow:0 5px 15px rgba(79,70,229,.2)}.dark .action-btn-new.primary{box-shadow:0 5px 15px rgba(79,70,229,.3)}.action-btn-new.success{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.action-btn-new.success:hover{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.action-btn-new.success:is(.dark *){--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.action-btn-new.success:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.action-btn-new.success{box-shadow:0 5px 15px rgba(16,185,129,.2)}.dark .action-btn-new.success{box-shadow:0 5px 15px rgba(16,185,129,.3)}.action-btn-new.danger{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.action-btn-new.danger:hover{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.action-btn-new.danger:is(.dark *){--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.action-btn-new.danger:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.action-btn-new.danger{box-shadow:0 5px 15px rgba(239,68,68,.2)}.dark .action-btn-new.danger{box-shadow:0 5px 15px rgba(239,68,68,.3)}.printer-info-row{margin-bottom:.375rem;display:flex;align-items:center;gap:.5rem;font-size:.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.printer-info-row:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}@media (min-width:640px){.printer-info-row{font-size:.875rem;line-height:1.25rem}}.printer-info-icon{height:.875rem;width:.875rem;flex-shrink:0;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.printer-info-icon:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}@media (min-width:640px){.printer-info-icon{height:1rem;width:1rem}}.online-indicator{position:absolute;top:.625rem;right:.625rem;height:.75rem;width:.75rem;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:0 0 0 rgba(16,185,129,.6);animation:pulse-ring 2s cubic-bezier(.455,.03,.515,.955) infinite}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 rgba(16,185,129,.6)}70%{box-shadow:0 0 0 6px rgba(16,185,129,0)}to{box-shadow:0 0 0 0 rgba(16,185,129,0)}}.status-overview-new{display:flex;flex-wrap:wrap;gap:.75rem;border-radius:.5rem;border-width:1px;border-color:rgba(229,231,235,.6);background-color:hsla(0,0%,100%,.6);padding:.75rem;font-size:.75rem;line-height:1rem;--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.status-overview-new:is(.dark *){border-color:rgba(51,65,85,.3);background-color:rgba(30,41,59,.6)}@media (min-width:640px){.status-overview-new{font-size:.875rem;line-height:1.25rem}}.status-overview-new{box-shadow:0 10px 25px rgba(0,0,0,.04),0 5px 10px rgba(0,0,0,.02),0 0 0 1px hsla(0,0%,100%,.1)}.dark .status-overview-new{box-shadow:0 10px 25px rgba(0,0,0,.15),0 5px 10px rgba(0,0,0,.1),0 0 0 1px hsla(0,0%,100%,.03)}.status-dot{height:.625rem;width:.625rem;border-radius:9999px}.status-dot.online{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1));animation:pulse-dot 2s cubic-bezier(.455,.03,.515,.955) infinite}.status-dot.offline{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}@keyframes pulse-dot{0%{transform:scale(.95);opacity:1}50%{transform:scale(1.1);opacity:.8}to{transform:scale(.95);opacity:1}}.modal-new{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background-color:rgba(0,0,0,.4);padding:1rem;--tw-backdrop-blur:blur(4px)}.modal-content-new,.modal-new{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.modal-content-new{width:100%;max-width:28rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:16px;border-width:1px;border-color:rgba(229,231,235,.6);background-color:hsla(0,0%,100%,.9);padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(40px);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.modal-content-new:is(.dark *){border-color:rgba(51,65,85,.3);background-color:rgba(30,41,59,.9)}.modal-content-new{box-shadow:0 25px 50px rgba(0,0,0,.15),0 15px 30px rgba(0,0,0,.1),0 20px 25px -5px rgba(0,0,0,.5),0 10px 10px -5px rgba(0,0,0,.3)}.user-dropdown-item{display:flex;cursor:pointer;align-items:center;padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.user-dropdown-item:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.user-dropdown-item:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.user-dropdown-item:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.user-dropdown-item:first-child{border-top-left-radius:12px;border-top-right-radius:12px}.user-dropdown-item:last-child{border-bottom-right-radius:12px;border-bottom-left-radius:12px}.user-dropdown-item:hover{background:rgba(248,250,252,.8);transform:translateX(2px)}.dark .user-dropdown-item:hover{background:rgba(30,41,59,.8)}.user-dropdown-icon{margin-right:.75rem;height:1rem;width:1rem;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.user-dropdown-icon:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.user-dropdown-item:hover .user-dropdown-icon{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.user-dropdown-item:hover .user-dropdown-icon:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.user-dropdown-divider{margin-top:.25rem;margin-bottom:.25rem;border-top-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.user-dropdown-divider:is(.dark *){--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.user-info-section{border-bottom-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));padding:.75rem 1rem}.user-info-section:is(.dark *){--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.user-info-section{background:rgba(248,250,252,.5)}.dark .user-info-section{background:rgba(30,41,59,.5)}.user-info-name{font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.user-info-name:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.user-info-role{margin-top:.25rem;font-size:.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.user-info-role:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:left-\[2px\]:after{content:var(--tw-content);left:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:h-5:after{content:var(--tw-content);height:1.25rem}.after\:w-5:after{content:var(--tw-content);width:1.25rem}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:border:after{content:var(--tw-content);border-width:1px}.after\:border-gray-300:after{content:var(--tw-content);--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.after\:bg-white:after{content:var(--tw-content);--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.after\:transition-all:after{content:var(--tw-content);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}.hover\:-translate-y-0\.5:hover{--tw-translate-y:-0.125rem}.hover\:-translate-y-0\.5:hover,.hover\:-translate-y-1:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-1:hover{--tw-translate-y:-0.25rem}.hover\:-translate-y-2:hover{--tw-translate-y:-0.5rem}.hover\:-translate-y-2:hover,.hover\:scale-105:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1}.hover\:scale-110:hover,.hover\:transform:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-blue-600:hover{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.hover\:border-emerald-600:hover{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity,1))}.hover\:border-gray-300:hover{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.hover\:border-mercedes-blue:hover{--tw-border-opacity:1;border-color:rgb(0 115 206/var(--tw-border-opacity,1))}.hover\:bg-amber-100:hover{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.hover\:bg-black\/5:hover{background-color:rgba(0,0,0,.05)}.hover\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.hover\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-emerald-700:hover{--tw-bg-opacity:1;background-color:rgb(4 120 87/var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.hover\:bg-gray-400:hover{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-gray-600:hover{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.hover\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.hover\:bg-gray-800:hover{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.hover\:bg-green-100:hover{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.hover\:bg-green-600:hover{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.hover\:bg-green-700:hover{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.hover\:bg-indigo-600:hover{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.hover\:bg-mercedes-blue:hover{--tw-bg-opacity:1;background-color:rgb(0 115 206/var(--tw-bg-opacity,1))}.hover\:bg-mercedes-silver:hover{--tw-bg-opacity:1;background-color:rgb(170 169 173/var(--tw-bg-opacity,1))}.hover\:bg-orange-600:hover{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity,1))}.hover\:bg-orange-700:hover{--tw-bg-opacity:1;background-color:rgb(194 65 12/var(--tw-bg-opacity,1))}.hover\:bg-purple-100:hover{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.hover\:bg-purple-600:hover{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.hover\:bg-purple-700:hover{--tw-bg-opacity:1;background-color:rgb(126 34 206/var(--tw-bg-opacity,1))}.hover\:bg-red-100:hover{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.hover\:bg-red-500\/20:hover{background-color:rgba(239,68,68,.2)}.hover\:bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.hover\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.hover\:bg-slate-100\/50:hover{background-color:rgba(241,245,249,.5)}.hover\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.hover\:bg-slate-300:hover{--tw-bg-opacity:1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.hover\:bg-slate-400:hover{--tw-bg-opacity:1;background-color:rgb(148 163 184/var(--tw-bg-opacity,1))}.hover\:bg-slate-50:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.hover\:bg-slate-600:hover{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity,1))}.hover\:bg-slate-700:hover{--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.hover\:bg-teal-600:hover{--tw-bg-opacity:1;background-color:rgb(13 148 136/var(--tw-bg-opacity,1))}.hover\:bg-white:hover{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.hover\:bg-white\/10:hover{background-color:hsla(0,0%,100%,.1)}.hover\:bg-white\/20:hover{background-color:hsla(0,0%,100%,.2)}.hover\:bg-white\/25:hover{background-color:hsla(0,0%,100%,.25)}.hover\:bg-white\/50:hover{background-color:hsla(0,0%,100%,.5)}.hover\:bg-yellow-100:hover{--tw-bg-opacity:1;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.hover\:bg-yellow-600:hover{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.hover\:bg-yellow-700:hover{--tw-bg-opacity:1;background-color:rgb(161 98 7/var(--tw-bg-opacity,1))}.hover\:from-blue-600:hover{--tw-gradient-from:#2563eb var(--tw-gradient-from-position);--tw-gradient-to:rgba(37,99,235,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-green-600:hover{--tw-gradient-from:#16a34a var(--tw-gradient-from-position);--tw-gradient-to:rgba(22,163,74,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-orange-600:hover{--tw-gradient-from:#ea580c var(--tw-gradient-from-position);--tw-gradient-to:rgba(234,88,12,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-slate-600:hover{--tw-gradient-from:#475569 var(--tw-gradient-from-position);--tw-gradient-to:rgba(71,85,105,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:to-blue-700:hover{--tw-gradient-to:#1d4ed8 var(--tw-gradient-to-position)}.hover\:to-green-700:hover{--tw-gradient-to:#15803d var(--tw-gradient-to-position)}.hover\:to-red-600:hover{--tw-gradient-to:#dc2626 var(--tw-gradient-to-position)}.hover\:to-slate-700:hover{--tw-gradient-to:#334155 var(--tw-gradient-to-position)}.hover\:text-blue-400:hover{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.hover\:text-blue-500:hover{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.hover\:text-blue-600:hover{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.hover\:text-blue-700:hover{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.hover\:text-blue-800:hover{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.hover\:text-blue-900:hover{--tw-text-opacity:1;color:rgb(30 58 138/var(--tw-text-opacity,1))}.hover\:text-emerald-600:hover{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.hover\:text-gray-200:hover{--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.hover\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.hover\:text-gray-800:hover{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.hover\:text-gray-900:hover{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.hover\:text-green-900:hover{--tw-text-opacity:1;color:rgb(20 83 45/var(--tw-text-opacity,1))}.hover\:text-mercedes-blue:hover{--tw-text-opacity:1;color:rgb(0 115 206/var(--tw-text-opacity,1))}.hover\:text-orange-900:hover{--tw-text-opacity:1;color:rgb(124 45 18/var(--tw-text-opacity,1))}.hover\:text-red-500:hover{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.hover\:text-red-700:hover{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.hover\:text-red-900:hover{--tw-text-opacity:1;color:rgb(127 29 29/var(--tw-text-opacity,1))}.hover\:text-slate-600:hover{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.hover\:text-slate-700:hover{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.hover\:text-slate-800:hover{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.hover\:text-slate-900:hover{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-70:hover{opacity:.7}.hover\:shadow-2xl:hover{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.hover\:shadow-2xl:hover,.hover\:shadow-lg:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.hover\:shadow-md:hover,.hover\:shadow-xl:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.focus\:z-10:focus{z-index:10}.focus\:border-blue-500:focus{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.focus\:border-blue-600:focus{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.focus\:border-mercedes-blue:focus{--tw-border-opacity:1;border-color:rgb(0 115 206/var(--tw-border-opacity,1))}.focus\:border-red-500:focus{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.focus\:ring-blue-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(37 99 235/var(--tw-ring-opacity,1))}.focus\:ring-green-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(74 222 128/var(--tw-ring-opacity,1))}.focus\:ring-green-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.focus\:ring-mercedes-blue:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(0 115 206/var(--tw-ring-opacity,1))}.focus\:ring-red-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(248 113 113/var(--tw-ring-opacity,1))}.focus\:ring-red-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68/var(--tw-ring-opacity,1))}.focus\:ring-yellow-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(234 179 8/var(--tw-ring-opacity,1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:bg-gray-200:active{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-gray-100:disabled{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.disabled\:opacity-50:disabled{opacity:.5}.group:focus-within .group-focus-within\:text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:-translate-x-1{--tw-translate-x:-0.25rem}.group:hover .group-hover\:-translate-x-1,.group:hover .group-hover\:translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-full{--tw-translate-x:100%}.group:hover .group-hover\:scale-110{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:text-mercedes-blue{--tw-text-opacity:1;color:rgb(0 115 206/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.group:hover .group-hover\:opacity-100{opacity:1}.group:disabled .group-disabled\:opacity-0{opacity:0}.group:disabled .group-disabled\:opacity-100{opacity:1}.peer:checked~.peer-checked\:border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.peer:checked~.peer-checked\:border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.peer:checked~.peer-checked\:border-slate-500{--tw-border-opacity:1;border-color:rgb(100 116 139/var(--tw-border-opacity,1))}.peer:checked~.peer-checked\:bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.peer:checked~.peer-checked\:bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.peer:checked~.peer-checked\:bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.peer:checked~.peer-checked\:bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.peer:checked~.peer-checked\:after\:translate-x-full:after{content:var(--tw-content);--tw-translate-x:100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\:after\:border-white:after{content:var(--tw-content);--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.peer:focus~.peer-focus\:outline-none{outline:2px solid transparent;outline-offset:2px}.peer:focus~.peer-focus\:ring-4{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.peer:focus~.peer-focus\:ring-blue-300{--tw-ring-opacity:1;--tw-ring-color:rgb(147 197 253/var(--tw-ring-opacity,1))}.dark\:rotate-0:is(.dark *){--tw-rotate:0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:rotate-90:is(.dark *){--tw-rotate:90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:scale-100:is(.dark *){--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:scale-75:is(.dark *){--tw-scale-x:.75;--tw-scale-y:.75;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:divide-gray-700:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(55 65 81/var(--tw-divide-opacity,1))}.dark\:divide-slate-700:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(51 65 85/var(--tw-divide-opacity,1))}.dark\:border-amber-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(146 64 14/var(--tw-border-opacity,1))}.dark\:border-blue-400:is(.dark *){--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.dark\:border-blue-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.dark\:border-blue-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(29 78 216/var(--tw-border-opacity,1))}.dark\:border-blue-700\/30:is(.dark *){border-color:rgba(29,78,216,.3)}.dark\:border-blue-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity,1))}.dark\:border-blue-800\/50:is(.dark *){border-color:rgba(30,64,175,.5)}.dark\:border-emerald-700\/30:is(.dark *){border-color:rgba(4,120,87,.3)}.dark\:border-gray-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity,1))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity,1))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity,1))}.dark\:border-green-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity,1))}.dark\:border-green-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(22 101 52/var(--tw-border-opacity,1))}.dark\:border-green-800\/50:is(.dark *){border-color:rgba(22,101,52,.5)}.dark\:border-indigo-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(55 48 163/var(--tw-border-opacity,1))}.dark\:border-indigo-800\/50:is(.dark *){border-color:rgba(55,48,163,.5)}.dark\:border-orange-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(194 65 12/var(--tw-border-opacity,1))}.dark\:border-orange-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(154 52 18/var(--tw-border-opacity,1))}.dark\:border-orange-800\/50:is(.dark *){border-color:rgba(154,52,18,.5)}.dark\:border-purple-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(107 33 168/var(--tw-border-opacity,1))}.dark\:border-purple-800\/50:is(.dark *){border-color:rgba(107,33,168,.5)}.dark\:border-red-400:is(.dark *){--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.dark\:border-red-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(185 28 28/var(--tw-border-opacity,1))}.dark\:border-red-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(153 27 27/var(--tw-border-opacity,1))}.dark\:border-red-800\/50:is(.dark *){border-color:rgba(153,27,27,.5)}.dark\:border-slate-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity,1))}.dark\:border-slate-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.dark\:border-slate-700\/50:is(.dark *){border-color:rgba(51,65,85,.5)}.dark\:border-white\/20:is(.dark *){border-color:hsla(0,0%,100%,.2)}.dark\:border-yellow-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(202 138 4/var(--tw-border-opacity,1))}.dark\:border-yellow-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(161 98 7/var(--tw-border-opacity,1))}.dark\:border-yellow-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(133 77 14/var(--tw-border-opacity,1))}.dark\:border-t-slate-700:is(.dark *){--tw-border-opacity:1;border-top-color:rgb(51 65 85/var(--tw-border-opacity,1))}.dark\:bg-amber-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(217 119 6/var(--tw-bg-opacity,1))}.dark\:bg-amber-900\/20:is(.dark *){background-color:rgba(120,53,15,.2)}.dark\:bg-black:is(.dark *){--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.dark\:bg-black\/50:is(.dark *){background-color:rgba(0,0,0,.5)}.dark\:bg-black\/80:is(.dark *){background-color:rgba(0,0,0,.8)}.dark\:bg-blue-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(147 197 253/var(--tw-bg-opacity,1))}.dark\:bg-blue-500:is(.dark *){--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.dark\:bg-blue-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.dark\:bg-blue-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 64 175/var(--tw-bg-opacity,1))}.dark\:bg-blue-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 58 138/var(--tw-bg-opacity,1))}.dark\:bg-blue-900\/10:is(.dark *){background-color:rgba(30,58,138,.1)}.dark\:bg-blue-900\/20:is(.dark *){background-color:rgba(30,58,138,.2)}.dark\:bg-blue-900\/30:is(.dark *){background-color:rgba(30,58,138,.3)}.dark\:bg-blue-900\/50:is(.dark *){background-color:rgba(30,58,138,.5)}.dark\:bg-cyan-900\/50:is(.dark *){background-color:rgba(22,78,99,.5)}.dark\:bg-emerald-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(6 78 59/var(--tw-bg-opacity,1))}.dark\:bg-emerald-900\/20:is(.dark *){background-color:rgba(6,78,59,.2)}.dark\:bg-emerald-900\/50:is(.dark *){background-color:rgba(6,78,59,.5)}.dark\:bg-gray-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.dark\:bg-gray-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.dark\:bg-gray-900\/20:is(.dark *){background-color:rgba(17,24,39,.2)}.dark\:bg-gray-900\/30:is(.dark *){background-color:rgba(17,24,39,.3)}.dark\:bg-green-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(134 239 172/var(--tw-bg-opacity,1))}.dark\:bg-green-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.dark\:bg-green-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.dark\:bg-green-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(22 101 52/var(--tw-bg-opacity,1))}.dark\:bg-green-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(20 83 45/var(--tw-bg-opacity,1))}.dark\:bg-green-900\/10:is(.dark *){background-color:rgba(20,83,45,.1)}.dark\:bg-green-900\/20:is(.dark *){background-color:rgba(20,83,45,.2)}.dark\:bg-green-900\/30:is(.dark *){background-color:rgba(20,83,45,.3)}.dark\:bg-green-900\/50:is(.dark *){background-color:rgba(20,83,45,.5)}.dark\:bg-indigo-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(67 56 202/var(--tw-bg-opacity,1))}.dark\:bg-indigo-900\/10:is(.dark *){background-color:rgba(49,46,129,.1)}.dark\:bg-indigo-900\/20:is(.dark *){background-color:rgba(49,46,129,.2)}.dark\:bg-indigo-900\/50:is(.dark *){background-color:rgba(49,46,129,.5)}.dark\:bg-orange-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(253 186 116/var(--tw-bg-opacity,1))}.dark\:bg-orange-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(124 45 18/var(--tw-bg-opacity,1))}.dark\:bg-orange-900\/10:is(.dark *){background-color:rgba(124,45,18,.1)}.dark\:bg-orange-900\/20:is(.dark *){background-color:rgba(124,45,18,.2)}.dark\:bg-orange-900\/30:is(.dark *){background-color:rgba(124,45,18,.3)}.dark\:bg-orange-900\/50:is(.dark *){background-color:rgba(124,45,18,.5)}.dark\:bg-purple-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.dark\:bg-purple-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(88 28 135/var(--tw-bg-opacity,1))}.dark\:bg-purple-900\/10:is(.dark *){background-color:rgba(88,28,135,.1)}.dark\:bg-purple-900\/20:is(.dark *){background-color:rgba(88,28,135,.2)}.dark\:bg-purple-900\/30:is(.dark *){background-color:rgba(88,28,135,.3)}.dark\:bg-purple-900\/50:is(.dark *){background-color:rgba(88,28,135,.5)}.dark\:bg-red-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity,1))}.dark\:bg-red-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.dark\:bg-red-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.dark\:bg-red-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(153 27 27/var(--tw-bg-opacity,1))}.dark\:bg-red-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(127 29 29/var(--tw-bg-opacity,1))}.dark\:bg-red-900\/10:is(.dark *){background-color:rgba(127,29,29,.1)}.dark\:bg-red-900\/20:is(.dark *){background-color:rgba(127,29,29,.2)}.dark\:bg-red-900\/30:is(.dark *){background-color:rgba(127,29,29,.3)}.dark\:bg-red-900\/40:is(.dark *){background-color:rgba(127,29,29,.4)}.dark\:bg-red-900\/50:is(.dark *){background-color:rgba(127,29,29,.5)}.dark\:bg-slate-500:is(.dark *){--tw-bg-opacity:1;background-color:rgb(100 116 139/var(--tw-bg-opacity,1))}.dark\:bg-slate-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity,1))}.dark\:bg-slate-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.dark\:bg-slate-700\/30:is(.dark *){background-color:rgba(51,65,85,.3)}.dark\:bg-slate-700\/40:is(.dark *){background-color:rgba(51,65,85,.4)}.dark\:bg-slate-700\/50:is(.dark *){background-color:rgba(51,65,85,.5)}.dark\:bg-slate-700\/60:is(.dark *){background-color:rgba(51,65,85,.6)}.dark\:bg-slate-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\:bg-slate-800\/50:is(.dark *){background-color:rgba(30,41,59,.5)}.dark\:bg-slate-800\/60:is(.dark *){background-color:rgba(30,41,59,.6)}.dark\:bg-slate-800\/80:is(.dark *){background-color:rgba(30,41,59,.8)}.dark\:bg-slate-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.dark\:bg-slate-900\/50:is(.dark *){background-color:rgba(15,23,42,.5)}.dark\:bg-slate-900\/60:is(.dark *){background-color:rgba(15,23,42,.6)}.dark\:bg-slate-900\/80:is(.dark *){background-color:rgba(15,23,42,.8)}.dark\:bg-slate-900\/90:is(.dark *){background-color:rgba(15,23,42,.9)}.dark\:bg-teal-900\/50:is(.dark *){background-color:rgba(19,78,74,.5)}.dark\:bg-white\/10:is(.dark *){background-color:hsla(0,0%,100%,.1)}.dark\:bg-yellow-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(253 224 71/var(--tw-bg-opacity,1))}.dark\:bg-yellow-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(113 63 18/var(--tw-bg-opacity,1))}.dark\:bg-yellow-900\/20:is(.dark *){background-color:rgba(113,63,18,.2)}.dark\:bg-yellow-900\/30:is(.dark *){background-color:rgba(113,63,18,.3)}.dark\:bg-yellow-900\/50:is(.dark *){background-color:rgba(113,63,18,.5)}.dark\:bg-opacity-95:is(.dark *){--tw-bg-opacity:0.95}.dark\:from-blue-400:is(.dark *){--tw-gradient-from:#60a5fa var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-blue-400\/20:is(.dark *){--tw-gradient-from:rgba(96,165,250,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-blue-900\/10:is(.dark *){--tw-gradient-from:rgba(30,58,138,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-blue-900\/20:is(.dark *){--tw-gradient-from:rgba(30,58,138,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-blue-900\/30:is(.dark *){--tw-gradient-from:rgba(30,58,138,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-emerald-900\/20:is(.dark *){--tw-gradient-from:rgba(6,78,59,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(6,78,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-gray-900:is(.dark *){--tw-gradient-from:#111827 var(--tw-gradient-from-position);--tw-gradient-to:rgba(17,24,39,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-green-400:is(.dark *){--tw-gradient-from:#4ade80 var(--tw-gradient-from-position);--tw-gradient-to:rgba(74,222,128,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-green-400\/20:is(.dark *){--tw-gradient-from:rgba(74,222,128,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(74,222,128,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-green-900\/10:is(.dark *){--tw-gradient-from:rgba(20,83,45,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(20,83,45,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-green-900\/20:is(.dark *){--tw-gradient-from:rgba(20,83,45,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(20,83,45,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-green-900\/30:is(.dark *){--tw-gradient-from:rgba(20,83,45,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(20,83,45,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-orange-400:is(.dark *){--tw-gradient-from:#fb923c var(--tw-gradient-from-position);--tw-gradient-to:rgba(251,146,60,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-orange-400\/20:is(.dark *){--tw-gradient-from:rgba(251,146,60,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(251,146,60,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-orange-900\/10:is(.dark *){--tw-gradient-from:rgba(124,45,18,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(124,45,18,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-purple-900\/20:is(.dark *){--tw-gradient-from:rgba(88,28,135,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(88,28,135,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-purple-900\/30:is(.dark *){--tw-gradient-from:rgba(88,28,135,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(88,28,135,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-red-400:is(.dark *){--tw-gradient-from:#f87171 var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,91%,71%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-red-400\/20:is(.dark *){--tw-gradient-from:hsla(0,91%,71%,.2) var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,91%,71%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-slate-800:is(.dark *){--tw-gradient-from:#1e293b var(--tw-gradient-from-position);--tw-gradient-to:rgba(30,41,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-slate-900:is(.dark *){--tw-gradient-from:#0f172a var(--tw-gradient-from-position);--tw-gradient-to:rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-slate-950:is(.dark *){--tw-gradient-from:#020617 var(--tw-gradient-from-position);--tw-gradient-to:rgba(2,6,23,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-white:is(.dark *){--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:via-blue-200:is(.dark *){--tw-gradient-to:rgba(191,219,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#bfdbfe var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-blue-900:is(.dark *){--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#1e3a8a var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-blue-900\/20:is(.dark *){--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(30,58,138,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-blue-950:is(.dark *){--tw-gradient-to:rgba(23,37,84,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#172554 var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-emerald-900\/20:is(.dark *){--tw-gradient-to:rgba(6,78,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(6,78,59,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-red-900\/20:is(.dark *){--tw-gradient-to:rgba(127,29,29,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(127,29,29,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-slate-800:is(.dark *){--tw-gradient-to:rgba(30,41,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#1e293b var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:to-blue-500:is(.dark *){--tw-gradient-to:#3b82f6 var(--tw-gradient-to-position)}.dark\:to-blue-800\/30:is(.dark *){--tw-gradient-to:rgba(30,64,175,.3) var(--tw-gradient-to-position)}.dark\:to-emerald-400\/20:is(.dark *){--tw-gradient-to:rgba(52,211,153,.2) var(--tw-gradient-to-position)}.dark\:to-emerald-900\/10:is(.dark *){--tw-gradient-to:rgba(6,78,59,.1) var(--tw-gradient-to-position)}.dark\:to-emerald-900\/20:is(.dark *){--tw-gradient-to:rgba(6,78,59,.2) var(--tw-gradient-to-position)}.dark\:to-gray-200:is(.dark *){--tw-gradient-to:#e5e7eb var(--tw-gradient-to-position)}.dark\:to-gray-800:is(.dark *){--tw-gradient-to:#1f2937 var(--tw-gradient-to-position)}.dark\:to-green-500:is(.dark *){--tw-gradient-to:#22c55e var(--tw-gradient-to-position)}.dark\:to-green-800\/30:is(.dark *){--tw-gradient-to:rgba(22,101,52,.3) var(--tw-gradient-to-position)}.dark\:to-green-900\/20:is(.dark *){--tw-gradient-to:rgba(20,83,45,.2) var(--tw-gradient-to-position)}.dark\:to-indigo-400\/20:is(.dark *){--tw-gradient-to:rgba(129,140,248,.2) var(--tw-gradient-to-position)}.dark\:to-indigo-900:is(.dark *){--tw-gradient-to:#312e81 var(--tw-gradient-to-position)}.dark\:to-indigo-900\/10:is(.dark *){--tw-gradient-to:rgba(49,46,129,.1) var(--tw-gradient-to-position)}.dark\:to-indigo-900\/20:is(.dark *){--tw-gradient-to:rgba(49,46,129,.2) var(--tw-gradient-to-position)}.dark\:to-indigo-950:is(.dark *){--tw-gradient-to:#1e1b4b var(--tw-gradient-to-position)}.dark\:to-orange-500:is(.dark *){--tw-gradient-to:#f97316 var(--tw-gradient-to-position)}.dark\:to-orange-900\/20:is(.dark *){--tw-gradient-to:rgba(124,45,18,.2) var(--tw-gradient-to-position)}.dark\:to-pink-400\/20:is(.dark *){--tw-gradient-to:rgba(244,114,182,.2) var(--tw-gradient-to-position)}.dark\:to-pink-900\/20:is(.dark *){--tw-gradient-to:rgba(131,24,67,.2) var(--tw-gradient-to-position)}.dark\:to-purple-800\/30:is(.dark *){--tw-gradient-to:rgba(107,33,168,.3) var(--tw-gradient-to-position)}.dark\:to-red-400\/20:is(.dark *){--tw-gradient-to:hsla(0,91%,71%,.2) var(--tw-gradient-to-position)}.dark\:to-red-500:is(.dark *){--tw-gradient-to:#ef4444 var(--tw-gradient-to-position)}.dark\:to-red-900\/10:is(.dark *){--tw-gradient-to:rgba(127,29,29,.1) var(--tw-gradient-to-position)}.dark\:to-slate-200:is(.dark *){--tw-gradient-to:#e2e8f0 var(--tw-gradient-to-position)}.dark\:to-slate-300:is(.dark *){--tw-gradient-to:#cbd5e1 var(--tw-gradient-to-position)}.dark\:to-slate-700:is(.dark *){--tw-gradient-to:#334155 var(--tw-gradient-to-position)}.dark\:to-slate-800:is(.dark *){--tw-gradient-to:#1e293b var(--tw-gradient-to-position)}.dark\:to-slate-900:is(.dark *){--tw-gradient-to:#0f172a var(--tw-gradient-to-position)}.dark\:text-amber-200:is(.dark *){--tw-text-opacity:1;color:rgb(253 230 138/var(--tw-text-opacity,1))}.dark\:text-amber-300:is(.dark *){--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.dark\:text-amber-400:is(.dark *){--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.dark\:text-blue-100:is(.dark *){--tw-text-opacity:1;color:rgb(219 234 254/var(--tw-text-opacity,1))}.dark\:text-blue-200:is(.dark *){--tw-text-opacity:1;color:rgb(191 219 254/var(--tw-text-opacity,1))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.dark\:text-blue-500:is(.dark *){--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.dark\:text-cyan-400:is(.dark *){--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity,1))}.dark\:text-emerald-300:is(.dark *){--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.dark\:text-emerald-400:is(.dark *){--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.dark\:text-gray-100:is(.dark *){--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity,1))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.dark\:text-gray-600:is(.dark *){--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.dark\:text-green-100:is(.dark *){--tw-text-opacity:1;color:rgb(220 252 231/var(--tw-text-opacity,1))}.dark\:text-green-200:is(.dark *){--tw-text-opacity:1;color:rgb(187 247 208/var(--tw-text-opacity,1))}.dark\:text-green-300:is(.dark *){--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.dark\:text-green-400:is(.dark *){--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.dark\:text-indigo-200:is(.dark *){--tw-text-opacity:1;color:rgb(199 210 254/var(--tw-text-opacity,1))}.dark\:text-indigo-300:is(.dark *){--tw-text-opacity:1;color:rgb(165 180 252/var(--tw-text-opacity,1))}.dark\:text-indigo-400:is(.dark *){--tw-text-opacity:1;color:rgb(129 140 248/var(--tw-text-opacity,1))}.dark\:text-orange-200:is(.dark *){--tw-text-opacity:1;color:rgb(254 215 170/var(--tw-text-opacity,1))}.dark\:text-orange-300:is(.dark *){--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity,1))}.dark\:text-orange-400:is(.dark *){--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity,1))}.dark\:text-purple-200:is(.dark *){--tw-text-opacity:1;color:rgb(233 213 255/var(--tw-text-opacity,1))}.dark\:text-purple-300:is(.dark *){--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.dark\:text-purple-400:is(.dark *){--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.dark\:text-red-100:is(.dark *){--tw-text-opacity:1;color:rgb(254 226 226/var(--tw-text-opacity,1))}.dark\:text-red-200:is(.dark *){--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity,1))}.dark\:text-red-300:is(.dark *){--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.dark\:text-red-400:is(.dark *){--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.dark\:text-red-600:is(.dark *){--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.dark\:text-slate-100:is(.dark *){--tw-text-opacity:1;color:rgb(241 245 249/var(--tw-text-opacity,1))}.dark\:text-slate-200:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.dark\:text-slate-300:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.dark\:text-slate-400:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.dark\:text-slate-500:is(.dark *){--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.dark\:text-slate-600:is(.dark *){--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.dark\:text-teal-400:is(.dark *){--tw-text-opacity:1;color:rgb(45 212 191/var(--tw-text-opacity,1))}.dark\:text-white:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dark\:text-yellow-200:is(.dark *){--tw-text-opacity:1;color:rgb(254 240 138/var(--tw-text-opacity,1))}.dark\:text-yellow-300:is(.dark *){--tw-text-opacity:1;color:rgb(253 224 71/var(--tw-text-opacity,1))}.dark\:text-yellow-400:is(.dark *){--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity,1))}.dark\:placeholder-slate-400:is(.dark *)::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity,1))}.dark\:placeholder-slate-400:is(.dark *)::placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity,1))}.dark\:opacity-0:is(.dark *){opacity:0}.dark\:opacity-100:is(.dark *){opacity:1}.dark\:opacity-5:is(.dark *){opacity:.05}.dark\:shadow-2xl:is(.dark *){--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.dark\:hover\:border-blue-400:hover:is(.dark *){--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.dark\:hover\:border-emerald-400:hover:is(.dark *){--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.dark\:hover\:bg-amber-900\/30:hover:is(.dark *){background-color:rgba(120,53,15,.3)}.dark\:hover\:bg-black\/10:hover:is(.dark *){background-color:rgba(0,0,0,.1)}.dark\:hover\:bg-blue-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.dark\:hover\:bg-blue-600:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.dark\:hover\:bg-blue-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.dark\:hover\:bg-blue-900\/20:hover:is(.dark *){background-color:rgba(30,58,138,.2)}.dark\:hover\:bg-blue-900\/30:hover:is(.dark *){background-color:rgba(30,58,138,.3)}.dark\:hover\:bg-gray-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.dark\:hover\:bg-gray-600:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.dark\:hover\:bg-gray-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.dark\:hover\:bg-green-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.dark\:hover\:bg-green-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.dark\:hover\:bg-green-900\/30:hover:is(.dark *){background-color:rgba(20,83,45,.3)}.dark\:hover\:bg-purple-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(126 34 206/var(--tw-bg-opacity,1))}.dark\:hover\:bg-purple-900\/30:hover:is(.dark *){background-color:rgba(88,28,135,.3)}.dark\:hover\:bg-red-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.dark\:hover\:bg-red-600:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.dark\:hover\:bg-red-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.dark\:hover\:bg-red-900\/30:hover:is(.dark *){background-color:rgba(127,29,29,.3)}.dark\:hover\:bg-slate-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(100 116 139/var(--tw-bg-opacity,1))}.dark\:hover\:bg-slate-600:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity,1))}.dark\:hover\:bg-slate-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.dark\:hover\:bg-slate-700\/50:hover:is(.dark *){background-color:rgba(51,65,85,.5)}.dark\:hover\:bg-slate-800:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\:hover\:bg-slate-800\/50:hover:is(.dark *){background-color:rgba(30,41,59,.5)}.dark\:hover\:bg-white\/15:hover:is(.dark *){background-color:hsla(0,0%,100%,.15)}.dark\:hover\:bg-white\/5:hover:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:hover\:bg-yellow-900\/30:hover:is(.dark *){background-color:rgba(113,63,18,.3)}.dark\:hover\:text-blue-200:hover:is(.dark *){--tw-text-opacity:1;color:rgb(191 219 254/var(--tw-text-opacity,1))}.dark\:hover\:text-blue-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.dark\:hover\:text-blue-400:hover:is(.dark *){--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.dark\:hover\:text-emerald-400:hover:is(.dark *){--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.dark\:hover\:text-gray-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.dark\:hover\:text-green-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.dark\:hover\:text-orange-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity,1))}.dark\:hover\:text-red-200:hover:is(.dark *){--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity,1))}.dark\:hover\:text-red-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.dark\:hover\:text-slate-200:hover:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.dark\:hover\:text-slate-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dark\:hover\:shadow-slate-900\/50:hover:is(.dark *){--tw-shadow-color:rgba(15,23,42,.5);--tw-shadow:var(--tw-shadow-colored)}.dark\:focus\:ring-blue-400:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(96 165 250/var(--tw-ring-opacity,1))}.dark\:focus\:ring-blue-600:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(37 99 235/var(--tw-ring-opacity,1))}.dark\:disabled\:bg-slate-800:disabled:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.group:hover .dark\:group-hover\:text-slate-300:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.group:hover .dark\:group-hover\:text-white:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.peer:checked~.dark\:peer-checked\:bg-blue-900\/20:is(.dark *){background-color:rgba(30,58,138,.2)}.peer:checked~.dark\:peer-checked\:bg-green-900\/20:is(.dark *){background-color:rgba(20,83,45,.2)}.peer:checked~.dark\:peer-checked\:bg-slate-900\/20:is(.dark *){background-color:rgba(15,23,42,.2)}.peer:focus~.dark\:peer-focus\:ring-blue-800:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(30 64 175/var(--tw-ring-opacity,1))}@media (min-width:640px){.sm\:mx-0{margin-left:0;margin-right:0}.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:ml-3{margin-left:.75rem}.sm\:ml-4{margin-left:1rem}.sm\:mt-0{margin-top:0}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:h-10{height:2.5rem}.sm\:h-5{height:1.25rem}.sm\:w-10{width:2.5rem}.sm\:w-5{width:1.25rem}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-lg{max-width:32rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-row-reverse{flex-direction:row-reverse}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:justify-center{justify-content:center}.sm\:justify-between{justify-content:space-between}.sm\:space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px*var(--tw-space-y-reverse))}.sm\:p-0{padding:0}.sm\:p-6{padding:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:pb-4{padding-bottom:1rem}.sm\:text-left{text-align:left}.sm\:align-middle{vertical-align:middle}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width:768px){.md\:col-span-2{grid-column:span 2/span 2}.md\:ml-2{margin-left:.5rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.md\:p-12{padding:3rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-8xl{font-size:6rem;line-height:1}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:ml-0{margin-left:0}.lg\:mt-0{margin-top:0}.lg\:block{display:block}.lg\:inline{display:inline}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px*var(--tw-space-y-reverse))}.lg\:p-12{padding:3rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-right{text-align:right}.lg\:text-6xl{font-size:3.75rem;line-height:1}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}} \ No newline at end of file +*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Mercedes-Benz Text,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--color-bg-primary:#fff;--color-bg-secondary:#fafbfc;--color-bg-tertiary:#f3f5f7;--color-bg-accent:#fbfcfd;--color-text-primary:#111827;--color-text-secondary:#374151;--color-text-muted:#6b7280;--color-text-accent:#0073ce;--color-border-primary:#e5e7eb;--color-border-secondary:#d1d5db;--color-accent:#0073ce;--color-accent-hover:#005a9f;--color-accent-light:#eff6ff;--color-accent-text:#fff;--color-shadow:rgba(0,0,0,.06);--color-shadow-strong:rgba(0,0,0,.1);--color-shadow-accent:rgba(0,115,206,.12);--card-radius:1rem;--gradient-primary:linear-gradient(135deg,#fff,#fafbfc 30%,#f8fafc 70%,#f3f5f7);--gradient-card:linear-gradient(135deg,#fff,#fcfcfd 50%,#fafbfc);--gradient-hero:linear-gradient(135deg,#fafbfc,#f3f5f7 40%,#eef2f5 80%,#f8fafc);--gradient-accent:linear-gradient(135deg,#0073ce,#005a9f);--gradient-surface:linear-gradient(135deg,#fff,#fbfcfd 50%,#f8fafc);--glass-bg:hsla(0,0%,100%,.92);--glass-border:hsla(0,0%,100%,.3);--glass-shadow:0 8px 32px rgba(0,0,0,.04);--glass-blur:blur(20px)}.dark{--color-bg-primary:#000;--color-bg-secondary:#0a0a0a;--color-bg-tertiary:#1a1a1a;--color-text-primary:#fff;--color-text-secondary:#e2e8f0;--color-text-muted:#94a3b8;--color-border-primary:#1a1a1a;--color-border-secondary:#2a2a2a;--color-accent:#fff;--color-accent-hover:#f0f0f0;--color-accent-light:#1e3a8a;--color-accent-text:#000;--color-shadow:rgba(0,0,0,.8);--color-shadow-strong:rgba(0,0,0,.9);--mb-black:#000}body{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}body:is(.dark *){--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}body{position:relative;min-height:100vh;background:var(--gradient-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:"cv02","cv03","cv04","cv11";line-height:1.65;font-size:15px}.dark body{background:linear-gradient(135deg,#000,#0a0a0a 50%,#000)}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 25% 25%,rgba(0,115,206,.015) 0,transparent 50%),radial-gradient(circle at 75% 75%,rgba(0,115,206,.01) 0,transparent 50%),radial-gradient(circle at 50% 10%,rgba(0,115,206,.008) 0,transparent 50%);pointer-events:none;z-index:-1}.dark body:before{background:radial-gradient(circle at 20% 50%,rgba(59,130,246,.03) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(59,130,246,.02) 0,transparent 50%)}nav{border-bottom-width:1px;--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:linear-gradient(135deg,hsla(0,0%,100%,.95),rgba(250,251,252,.92) 30%,rgba(248,250,252,.9) 70%,hsla(0,0%,100%,.95));border-bottom:1px solid rgba(229,231,235,.7);backdrop-filter:blur(28px) saturate(200%) brightness(110%);-webkit-backdrop-filter:blur(28px) saturate(200%) brightness(110%);box-shadow:0 4px 20px rgba(0,0,0,.04),0 2px 8px rgba(0,115,206,.02),inset 0 1px 0 hsla(0,0%,100%,.9)}.dark nav{background:rgba(0,0,0,.85);border-bottom-color:hsla(0,0%,100%,.1);box-shadow:0 8px 32px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.05)}.dark .card-enhanced{background:hsla(0,0%,4%,.8);border-color:var(--color-border-primary);box-shadow:0 4px 20px var(--color-shadow)}.btn-secondary{background:var(--gradient-surface);color:var(--color-text-primary);border:1px solid var(--color-border-primary);box-shadow:0 1px 6px rgba(0,0,0,.03),inset 0 1px 0 hsla(0,0%,100%,.8)}.btn-secondary:hover{background:var(--color-bg-secondary);border-color:var(--color-accent);color:var(--color-accent);box-shadow:0 4px 12px rgba(0,115,206,.08),inset 0 1px 0 hsla(0,0%,100%,.9)}.dark .input-enhanced{background:hsla(0,0%,4%,.8);border-color:var(--color-border-primary);color:var(--color-text-primary);box-shadow:0 2px 8px var(--color-shadow),inset 0 1px 0 hsla(0,0%,100%,.05)}.dark .input-enhanced:focus{border-color:#60a5fa;box-shadow:0 4px 15px rgba(96,165,250,.2),0 0 0 3px rgba(96,165,250,.1)}.\!container{width:100%!important}.container{width:100%}@media (min-width:475px){.\!container{max-width:475px!important}.container{max-width:475px}}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}@media (min-width:1920px){.\!container{max-width:1920px!important}.container{max-width:1920px}}@media (min-width:2560px){.\!container{max-width:2560px!important}.container{max-width:2560px}}.form-input,.form-multiselect,.form-select,.form-textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow:0 0 #0000}.form-input:focus,.form-multiselect:focus,.form-select:focus,.form-textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}.form-input::-moz-placeholder,.form-textarea::-moz-placeholder{color:#6b7280;opacity:1}.form-input::placeholder,.form-textarea::placeholder{color:#6b7280;opacity:1}.form-input::-webkit-datetime-edit-fields-wrapper{padding:0}.form-input::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}.form-input::-webkit-datetime-edit{display:inline-flex}.form-input::-webkit-datetime-edit,.form-input::-webkit-datetime-edit-day-field,.form-input::-webkit-datetime-edit-hour-field,.form-input::-webkit-datetime-edit-meridiem-field,.form-input::-webkit-datetime-edit-millisecond-field,.form-input::-webkit-datetime-edit-minute-field,.form-input::-webkit-datetime-edit-month-field,.form-input::-webkit-datetime-edit-second-field,.form-input::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}.form-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}.form-select:where([size]:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}.btn-mercedes{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,#0073ce,#005ba3);color:#fff;border:none;cursor:pointer}.btn-mercedes:hover{background:linear-gradient(135deg,#005ba3,#003d82);transform:translateY(-2px);box-shadow:0 12px 20px -5px rgba(0,115,206,.4)}.btn-mercedes:focus{outline:none;box-shadow:0 0 0 3px rgba(0,115,206,.3)}.btn-mercedes:active{transform:translateY(0);box-shadow:inset 0 2px 4px rgba(0,0,0,.2)}.mercedes-form-input{padding:.75rem 1rem;border-radius:8px;border:2px solid #e5e7eb;background:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:500}.mercedes-form-input:focus{border-color:#0073ce;box-shadow:0 0 0 4px rgba(0,115,206,.1),0 10px 15px -3px rgba(0,0,0,.1);transform:translateY(-2px);background:#fff}.dashboard-card{background:linear-gradient(135deg,#fff,#f8fafc);border:2px solid #f1f5f9;border-radius:16px;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dashboard-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 25px 50px -12px rgba(0,0,0,.15);border-color:#0073ce}.dark .bg-dark-card{background-color:#1e293b;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.admin-stats{margin-bottom:2rem;display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1rem}@media (min-width:640px){.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.admin-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat-card{position:relative;overflow:hidden;border-radius:12px;border-width:1px;border-color:rgba(229,231,235,.6);background-color:hsla(0,0%,100%,.6);padding:1.25rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.stat-card,.stat-card:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.stat-card:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.stat-card:is(.dark *){border-color:rgba(51,65,85,.3);background-color:rgba(0,0,0,.7)}.stat-card{backdrop-filter:blur(20px) saturate(180%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(180%) brightness(110%);box-shadow:0 25px 50px rgba(0,0,0,.15),0 0 0 1px hsla(0,0%,100%,.1)}.stat-icon{position:absolute;top:1rem;right:1rem;font-size:2.25rem;line-height:2.5rem;opacity:.15}.stat-title{margin-bottom:.5rem;font-size:.875rem;line-height:1.25rem;font-weight:500;text-transform:uppercase;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.stat-title:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.stat-value{margin-bottom:.25rem;font-size:1.5rem;line-height:2rem;font-weight:700;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.stat-value:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.stat-desc{font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.stat-desc:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.nav-tab{cursor:pointer;white-space:nowrap;border-bottom-width:2px;border-color:transparent;padding:1rem 1.5rem;--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.nav-tab:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.nav-tab:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.nav-tab:hover:is(.dark *){background-color:rgba(30,41,59,.5);--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.nav-tab.active{border-bottom-width:2px;--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity,1));font-weight:500;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.nav-tab.active:is(.dark *){--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.tab-content{margin-top:2rem}.tab-pane{display:none}.dark-mode-toggle-new .moon-icon:not(.tab-pane),.dark-mode-toggle-new .sun-icon:not(.tab-pane){animation:spin-in .5s cubic-bezier(.25,1,.5,1) forwards}.tab-pane.active{display:block}.form-input,.form-select,.form-textarea{width:100%;border-radius:.5rem;border-width:1px;border-color:rgba(209,213,219,.6);background-color:hsla(0,0%,100%,.6);padding:.5rem .75rem;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.form-input::-moz-placeholder,.form-select::-moz-placeholder,.form-textarea::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(156 163 175/var(--tw-placeholder-opacity,1))}.form-input::placeholder,.form-select::placeholder,.form-textarea::placeholder{--tw-placeholder-opacity:1;color:rgb(156 163 175/var(--tw-placeholder-opacity,1))}.form-input,.form-select,.form-textarea{--tw-backdrop-blur:blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:transparent;outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(100 116 139/var(--tw-ring-opacity,1))}.form-input:is(.dark *),.form-select:is(.dark *),.form-textarea:is(.dark *){border-color:rgba(71,85,105,.6);background-color:rgba(30,41,59,.6);--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.form-input,.form-select,.form-textarea{backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);box-shadow:0 10px 20px rgba(0,0,0,.1),0 0 0 1px hsla(0,0%,100%,.05)}.admin-table{min-width:100%}.admin-table>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse));--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.admin-table:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(51 65 85/var(--tw-divide-opacity,1))}.admin-table thead{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.admin-table thead:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.admin-table th{padding:.75rem 1.5rem;text-align:left;font-size:.75rem;line-height:1rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.admin-table th:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.admin-table tbody>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse));--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.admin-table tbody{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.admin-table tbody:is(.dark *){background-color:#1e293b}.admin-table tbody:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(51 65 85/var(--tw-divide-opacity,1))}.admin-table tr{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.admin-table tr:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.admin-table tr:hover:is(.dark *){background-color:rgba(51,65,85,.5)}.admin-table td{white-space:nowrap;padding:1rem 1.5rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.admin-table td:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.badge{display:inline-flex;border-radius:9999px;padding-left:.5rem;padding-right:.5rem;font-size:.75rem;font-weight:600;line-height:1.25rem}.printer-card{border-radius:12px;border-width:1px;border-color:rgba(229,231,235,.6);background-color:hsla(0,0%,100%,.6);padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.printer-card,.printer-card:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.printer-card:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.printer-card:is(.dark *){border-color:rgba(51,65,85,.3);background-color:rgba(0,0,0,.7)}.printer-card{backdrop-filter:blur(20px) saturate(180%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(180%) brightness(110%);box-shadow:0 25px 50px rgba(0,0,0,.15),0 0 0 1px hsla(0,0%,100%,.1)}.printer-name{font-size:1.25rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.printer-name:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.printer-status{margin-top:1rem;display:flex;align-items:center}.status-indicator{margin-right:.5rem;height:.75rem;width:.75rem;border-radius:9999px}.status-running{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1));animation:pulse 2s infinite}.log-entry{margin-bottom:.5rem;border-top-right-radius:.5rem;border-bottom-right-radius:.5rem;border-left-width:4px;--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.log-entry:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.log-entry:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.log-entry:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.scheduler-status{display:flex;align-items:center;border-radius:.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));padding:1rem;--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.scheduler-status:is(.dark *){--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.progress-bar{height:.5rem;width:100%;overflow:hidden;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.progress-bar:is(.dark *){--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.progress-bar-fill{height:100%;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.\!notification,.notification{position:fixed;top:1rem;right:1rem;z-index:50;max-width:28rem;--tw-translate-x:100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:16px;padding:1rem;opacity:0;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s}.\!notification{background:hsla(0,0%,100%,.08)!important;backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%)!important;-webkit-backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%)!important;border:1px solid hsla(0,0%,100%,.25)!important;box-shadow:0 32px 64px rgba(0,0,0,.25),0 12px 24px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px hsla(0,0%,100%,.1)!important;animation:notification-slide-in .6s cubic-bezier(.4,0,.2,1)!important}.notification{background:hsla(0,0%,100%,.08);backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);-webkit-backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);border:1px solid hsla(0,0%,100%,.25);box-shadow:0 32px 64px rgba(0,0,0,.25),0 12px 24px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px hsla(0,0%,100%,.1);animation:notification-slide-in .6s cubic-bezier(.4,0,.2,1)}.dark .notification{background:rgba(0,0,0,.2);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 32px 64px rgba(0,0,0,.6),0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.dark .\!notification{background:rgba(0,0,0,.2)!important;backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%)!important;-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%)!important;border:1px solid hsla(0,0%,100%,.15)!important;box-shadow:0 32px 64px rgba(0,0,0,.6),0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)!important}.\!notification.show,.notification.\!show,.notification.show{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:1}.\!notification:hover{transform:translateY(-2px) scale(1.02)!important;box-shadow:0 40px 80px rgba(0,0,0,.3),0 16px 32px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px hsla(0,0%,100%,.15)!important}.notification:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 40px 80px rgba(0,0,0,.3),0 16px 32px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px hsla(0,0%,100%,.15)}.dark .notification:hover{box-shadow:0 40px 80px rgba(0,0,0,.7),0 16px 32px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1)}.dark .\!notification:hover{box-shadow:0 40px 80px rgba(0,0,0,.7),0 16px 32px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1)!important}.notification-success{--tw-text-opacity:1;color:rgb(220 252 231/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(34,197,94,.25),rgba(134,239,172,.18) 50%,rgba(34,197,94,.12));border:1px solid rgba(34,197,94,.4);box-shadow:0 32px 64px rgba(34,197,94,.2),0 12px 24px rgba(34,197,94,.1),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px rgba(34,197,94,.3)}.notification-error{--tw-text-opacity:1;color:rgb(254 226 226/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(239,68,68,.25),hsla(0,94%,82%,.18) 50%,rgba(239,68,68,.12));border:1px solid rgba(239,68,68,.4);box-shadow:0 32px 64px rgba(239,68,68,.2),0 12px 24px rgba(239,68,68,.1),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px rgba(239,68,68,.3)}.notification-warning{--tw-text-opacity:1;color:rgb(254 249 195/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(245,158,11,.25),rgba(252,211,77,.18) 50%,rgba(245,158,11,.12));border:1px solid rgba(245,158,11,.4);box-shadow:0 32px 64px rgba(245,158,11,.2),0 12px 24px rgba(245,158,11,.1),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px rgba(245,158,11,.3)}.notification-info{--tw-text-opacity:1;color:rgb(219 234 254/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(59,130,246,.25),rgba(147,197,253,.18) 50%,rgba(59,130,246,.12));border:1px solid rgba(59,130,246,.4);box-shadow:0 32px 64px rgba(59,130,246,.2),0 12px 24px rgba(59,130,246,.1),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px rgba(59,130,246,.3)}.dark .toast-notification{background:rgba(0,0,0,.2);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 32px 64px rgba(0,0,0,.6),0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.alert{margin-bottom:1.5rem;border-radius:16px;border-width:1px;padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);background:hsla(0,0%,100%,.12);backdrop-filter:blur(30px) saturate(200%) brightness(120%) contrast(110%);-webkit-backdrop-filter:blur(30px) saturate(200%) brightness(120%) contrast(110%);border:1px solid hsla(0,0%,100%,.25);box-shadow:0 25px 50px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1);animation:alert-fade-in .5s ease-out}.dark .alert{background:rgba(0,0,0,.3);backdrop-filter:blur(30px) saturate(180%) brightness(110%) contrast(120%);-webkit-backdrop-filter:blur(30px) saturate(180%) brightness(110%) contrast(120%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 25px 50px rgba(0,0,0,.4),0 8px 16px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.15),0 0 0 1px hsla(0,0%,100%,.05)}.dark .browser-notification{background:rgba(0,0,0,.2);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 32px 64px rgba(0,0,0,.6),0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}@keyframes notification-slide-in{0%{opacity:0;transform:translateX(100%) translateY(-20px) scale(.9);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}50%{opacity:.8;transform:translateX(20px) translateY(-10px) scale(1.05);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}to{opacity:1;transform:translateX(0) translateY(0) scale(1);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px)}}@keyframes notification-slide-out{0%{opacity:1;transform:translateX(0) translateY(0) scale(1)}to{opacity:0;transform:translateX(100%) translateY(-20px) scale(.9)}}@keyframes notification-slide-left{0%{opacity:0;transform:translateX(-100%) translateY(-20px) scale(.9);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}50%{opacity:.8;transform:translateX(-20px) translateY(-10px) scale(1.05);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}to{opacity:1;transform:translateX(0) translateY(0) scale(1);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px)}}@keyframes alert-fade-in{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.\!notification.hiding{animation:notification-slide-out .4s cubic-bezier(.4,0,.2,1) forwards!important}.notification.hiding{animation:notification-slide-out .4s cubic-bezier(.4,0,.2,1) forwards}.notification-icon{margin-right:.75rem;display:flex;height:2rem;width:2rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:9999px;background:hsla(0,0%,100%,.2);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.4)}.notification-content{flex:1 1 0%}.notification-title{margin-bottom:.25rem;font-size:.875rem;line-height:1.25rem;font-weight:600}.notification-message{font-size:.875rem;line-height:1.25rem;opacity:.9}.notification-close{margin-left:.75rem;border-radius:.5rem;padding:.25rem;opacity:.7;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.notification-close:hover{opacity:1}.notification-close{background:hsla(0,0%,100%,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.2)}.notification-close:hover{background:hsla(0,0%,100%,.2);transform:scale(1.1)}.notifications-container{position:fixed;top:1rem;right:1rem;z-index:50;max-width:28rem}.notifications-container>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.flash-message-light.success{border-left:4px solid #10b981;background:linear-gradient(135deg,rgba(236,253,245,.95),rgba(209,250,229,.9))}.flash-message-light.error{border-left:4px solid #ef4444;background:linear-gradient(135deg,hsla(0,86%,97%,.95),hsla(0,94%,82%,.9))}.flash-message-light.\!warning{border-left:4px solid #fbbf24!important;background:linear-gradient(135deg,rgba(255,251,235,.95),hsla(48,96%,89%,.9))!important}.flash-message-light.warning{border-left:4px solid #fbbf24;background:linear-gradient(135deg,rgba(255,251,235,.95),hsla(48,96%,89%,.9))}.flash-message-light.info{border-left:4px solid #3b82f6;background:linear-gradient(135deg,rgba(239,246,255,.95),rgba(219,234,254,.9))}.dark .table-enhanced{background:hsla(0,0%,4%,.8);border-color:var(--color-border-primary)}.dark .table-enhanced th{background:rgba(26,26,26,.8);color:var(--color-text-primary)}.dark .table-enhanced tbody tr:hover{background:rgba(26,26,26,.6)}.dark .modal-enhanced{background:rgba(0,0,0,.95);border-color:rgba(42,42,42,.7);box-shadow:0 50px 100px rgba(0,0,0,.5),inset 0 2px 0 hsla(0,0%,100%,.05)}.dark-mode-toggle-new{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:9999px;padding:.625rem;transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,rgba(248,250,252,.9),rgba(241,245,249,.8));border:1px solid rgba(226,232,240,.7);box-shadow:0 4px 12px rgba(0,0,0,.06),0 2px 4px rgba(0,115,206,.04),inset 0 1px 0 hsla(0,0%,100%,.8);color:var(--color-text-secondary)}.dark-mode-toggle-new:hover{transform:translateY(-2px) scale(1.05);background:linear-gradient(135deg,rgba(248,250,252,.95),rgba(241,245,249,.85));box-shadow:0 8px 20px rgba(0,0,0,.1),0 4px 8px rgba(0,115,206,.08),inset 0 1px 0 hsla(0,0%,100%,.9)}.dark-mode-toggle-new:active{transform:translateY(-1px) scale(.98)}.dark .dark-mode-toggle-new{background:hsla(0,0%,4%,.8);border:1px solid rgba(42,42,42,.6);box-shadow:0 4px 12px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.05);color:var(--color-text-secondary)}.dark .dark-mode-toggle-new:hover{background:hsla(0,0%,4%,.9);box-shadow:0 8px 20px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.08)}.dark-mode-toggle-new .moon-icon,.dark-mode-toggle-new .sun-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:all .3s cubic-bezier(.4,0,.2,1)}.dark-mode-toggle-new .moon-icon:not(.hidden),.dark-mode-toggle-new .sun-icon:not(.hidden){animation:icon-appear .5s cubic-bezier(.25,1,.5,1) forwards}@keyframes icon-appear{0%{opacity:0;transform:translate(-50%,-50%) scale(.5) rotate(-20deg)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}.dark .user-menu-button-new{background:hsla(0,0%,4%,.7);border-color:rgba(42,42,42,.6);box-shadow:0 2px 8px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.03)}.dark .user-menu-button-new:hover{background:hsla(0,0%,4%,.8);box-shadow:0 4px 12px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.05)}.dark .hover-lift-enhanced:hover{box-shadow:0 12px 30px var(--color-shadow)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--color-border-secondary) 0,var(--color-border-primary) 100%);border-radius:4px;-webkit-transition:background .2s ease;transition:background .2s ease}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--color-accent) 0,var(--color-accent-hover) 100%)}.dark ::-webkit-scrollbar-track{background:var(--color-bg-secondary)}.dark ::-webkit-scrollbar-thumb{background:var(--color-border-primary)}.dark ::-webkit-scrollbar-thumb:hover{background:#60a5fa}@keyframes loading-shimmer{0%{left:-100%}to{left:100%}}.dark .focus-enhanced:focus{outline-color:#60a5fa;box-shadow:0 0 0 4px rgba(96,165,250,.15),0 4px 12px rgba(96,165,250,.2)}@media (max-width:768px){.card-enhanced{padding:1rem;border-radius:.75rem}.btn-enhanced{padding:.75rem 1.5rem;font-size:.8rem}.modal-enhanced{border-radius:1rem;margin:1rem}.dark-mode-toggle-new{padding:.5rem}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media (prefers-contrast:high){:root{--color-shadow:rgba(0,0,0,.2);--color-shadow-strong:rgba(0,0,0,.3);--color-border-primary:#000}.dark{--color-border-primary:#fff}}.btn-primary{border-radius:.5rem;padding:.5rem 1rem;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.btn-primary:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.btn-primary:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(107 114 128/var(--tw-ring-opacity,1));--tw-ring-offset-width:2px}.btn-primary:is(.dark *){--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.btn-primary{background:rgba(0,0,0,.7);backdrop-filter:blur(20px) saturate(150%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(150%) brightness(110%);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 20px 40px rgba(0,0,0,.3),0 8px 16px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.1)}.btn-primary:hover{background:rgba(0,0,0,.9);backdrop-filter:blur(25px) saturate(180%) brightness(120%);-webkit-backdrop-filter:blur(25px) saturate(180%) brightness(120%);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 25px 50px rgba(0,0,0,.4),0 10px 20px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.3)}.dark .btn-primary{background:hsla(0,0%,100%,.7);border:1px solid rgba(0,0,0,.1);box-shadow:0 20px 40px rgba(0,0,0,.2),0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.8),0 0 0 1px rgba(0,0,0,.05)}.dark .btn-primary:hover{background:hsla(0,0%,100%,.9);border:1px solid rgba(0,0,0,.15);box-shadow:0 25px 50px rgba(0,0,0,.3),0 10px 20px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.9)}.btn-secondary{border-radius:.5rem;padding:.5rem 1rem;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1));--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.btn-secondary:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.btn-secondary:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(100 116 139/var(--tw-ring-opacity,1));--tw-ring-offset-width:2px}.btn-secondary:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.btn-secondary{background:hsla(0,0%,100%,.3);backdrop-filter:blur(20px) saturate(150%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(150%) brightness(110%);border:1px solid hsla(0,0%,100%,.4);box-shadow:0 20px 40px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px hsla(0,0%,100%,.2)}.btn-secondary:hover{background:hsla(0,0%,100%,.5);backdrop-filter:blur(25px) saturate(180%) brightness(120%);-webkit-backdrop-filter:blur(25px) saturate(180%) brightness(120%);border:1px solid hsla(0,0%,100%,.6);box-shadow:0 25px 50px rgba(0,0,0,.2),0 10px 20px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.7)}.dark .btn-secondary{background:rgba(0,0,0,.4);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 20px 40px rgba(0,0,0,.3),0 8px 16px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.1)}.dark .btn-secondary:hover{background:rgba(0,0,0,.6);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 25px 50px rgba(0,0,0,.4),0 10px 20px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.3)}.btn-outline{border-radius:.5rem;border-width:2px;border-color:rgba(0,0,0,.7);padding:.5rem 1rem;--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1));--tw-backdrop-blur:blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.btn-outline:hover{background-color:rgba(0,0,0,.7);--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.btn-outline:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(107 114 128/var(--tw-ring-opacity,1));--tw-ring-offset-width:2px}.btn-outline:is(.dark *){border-color:hsla(0,0%,100%,.7);--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.btn-outline:hover:is(.dark *){background-color:hsla(0,0%,100%,.7);--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.btn-outline{backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);box-shadow:0 15px 30px rgba(0,0,0,.1),0 0 0 1px hsla(0,0%,100%,.05)}.glass-card{border-radius:12px;padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:hsla(0,0%,100%,.15);backdrop-filter:blur(30px) saturate(200%) brightness(120%) contrast(110%);-webkit-backdrop-filter:blur(30px) saturate(200%) brightness(120%) contrast(110%);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 25px 50px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1);border-radius:var(--card-radius)}.dark .glass-card{background:rgba(0,0,0,.3);backdrop-filter:blur(30px) saturate(180%) brightness(110%) contrast(120%);-webkit-backdrop-filter:blur(30px) saturate(180%) brightness(110%) contrast(120%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 25px 50px rgba(0,0,0,.4),0 8px 16px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.15),0 0 0 1px hsla(0,0%,100%,.05)}.dashboard-card{border-radius:12px;padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.dashboard-card:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dashboard-card{background:hsla(0,0%,100%,.12);backdrop-filter:blur(35px) saturate(200%) brightness(125%) contrast(115%);-webkit-backdrop-filter:blur(35px) saturate(200%) brightness(125%) contrast(115%);border:1px solid hsla(0,0%,100%,.25);box-shadow:0 25px 50px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.25),0 0 0 1px hsla(0,0%,100%,.1);border-radius:var(--card-radius)}.dark .dashboard-card{background:rgba(0,0,0,.35);backdrop-filter:blur(35px) saturate(180%) brightness(115%) contrast(125%);-webkit-backdrop-filter:blur(35px) saturate(180%) brightness(115%) contrast(125%);border:1px solid hsla(0,0%,100%,.12);box-shadow:0 25px 50px rgba(0,0,0,.5),0 8px 16px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.12),0 0 0 1px hsla(0,0%,100%,.05)}.nav-link.active{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.nav-link.active:is(.dark *){--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.navbar{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;background:hsla(0,0%,100%,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:10px;box-shadow:0 4px 6px rgba(0,0,0,.1);transition:all .3s ease}@media (max-width:768px){.navbar{flex-direction:column;padding:.25rem}.navbar-button{margin:.25rem 0}}.dark .navbar{background:rgba(0,0,0,.25);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(120%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(120%);box-shadow:0 8px 32px rgba(0,0,0,.6),0 2px 8px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.1),0 0 0 1px hsla(0,0%,100%,.05);border-bottom:1px solid hsla(0,0%,100%,.1)}.navbar-brand{display:flex;align-items:center}.navbar-brand>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.navbar-brand{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.navbar-brand:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark .navbar-menu{background:rgba(0,0,0,.4);backdrop-filter:blur(20px) saturate(150%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(150%) brightness(110%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 4px 16px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.user-avatar{display:flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1));font-size:.875rem;line-height:1.25rem;font-weight:700;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.user-avatar,.user-avatar:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.user-avatar:hover{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.user-avatar:is(.dark *){--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.dark .menu-item{background:rgba(0,0,0,.2);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 2px 8px rgba(0,0,0,.2)}.dark .menu-item:hover{background:rgba(0,0,0,.4);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 4px 16px rgba(0,0,0,.3)}.menu-item.active{font-weight:500;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.menu-item.active:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.menu-item.active{background:hsla(0,0%,100%,.5);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid hsla(0,0%,100%,.6);box-shadow:0 4px 16px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.5)}.dark .menu-item.active{background:rgba(0,0,0,.6);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 4px 16px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2)}.user-dropdown{position:absolute;right:0;z-index:50;margin-top:.5rem;width:16rem;overflow:hidden;border-radius:12px;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);background:hsla(0,0%,100%,.1);backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);-webkit-backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 25px 50px rgba(0,0,0,.25),0 8px 16px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px hsla(0,0%,100%,.1);animation:fadeIn .2s ease-out forwards}.dark .user-dropdown{background:rgba(0,0,0,.4);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(120%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(120%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 25px 50px rgba(0,0,0,.6),0 8px 16px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.dropdown-header{display:flex;align-items:center;border-bottom-width:1px;border-color:rgba(229,231,235,.8);padding:1rem}.dropdown-header:is(.dark *){border-color:rgba(51,65,85,.3)}.dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.dropdown-item:hover{background-color:rgba(243,244,246,.8);--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.dropdown-item:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.dropdown-item:hover:is(.dark *){background-color:rgba(51,65,85,.6);--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dropdown-divider{border-top-width:1px;border-color:rgba(229,231,235,.8)}.dropdown-divider:is(.dark *){border-color:rgba(51,65,85,.3)}@keyframes mercedes-rotate{0%{transform:rotate(0deg)}25%{transform:rotate(90deg)}50%{transform:rotate(180deg)}75%{transform:rotate(270deg)}to{transform:rotate(1turn)}}.navbar-brand:hover svg{animation:mercedes-rotate 5s linear infinite;transform-origin:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.-bottom-2{bottom:-.5rem}.-bottom-40{bottom:-10rem}.-bottom-8{bottom:-2rem}.-left-2{left:-.5rem}.-left-32{left:-8rem}.-right-1{right:-.25rem}.-right-2{right:-.5rem}.-right-32{right:-8rem}.-top-1{top:-.25rem}.-top-2{top:-.5rem}.-top-40{top:-10rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-8{bottom:2rem}.bottom-full{bottom:100%}.end-1{inset-inline-end:.25rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-1{right:.25rem}.right-3{right:.75rem}.right-4{right:1rem}.right-5{right:1.25rem}.right-6{right:1.5rem}.right-8{right:2rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-20{top:5rem}.top-3{top:.75rem}.top-4{top:1rem}.top-5{top:1.25rem}.top-6{top:1.5rem}.top-8{top:2rem}.top-full{top:100%}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.col-span-1{grid-column:span 1/span 1}.col-span-full{grid-column:1/-1}.m-1{margin:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-8{margin-left:2rem;margin-right:2rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.-mb-px{margin-bottom:-1px}.-ml-1{margin-left:-.25rem}.-mt-8{margin-top:-2rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.ml-8{margin-left:2rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mr-6{margin-right:1.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.list-item{display:list-item}.hidden{display:none}.h-0{height:0}.h-1{height:.25rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-28{height:7rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-80{height:20rem}.h-96{height:24rem}.h-full{height:100%}.max-h-64{max-height:16rem}.max-h-96{max-height:24rem}.max-h-\[90vh\]{max-height:90vh}.min-h-\[80vh\]{min-height:80vh}.min-h-screen{min-height:100vh}.w-0{width:0}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-96{width:24rem}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0}.min-w-40{min-width:10rem}.min-w-\[150px\]{min-width:150px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x:-100%}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.translate-x-6{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-6{--tw-translate-x:1.5rem}.translate-x-full{--tw-translate-x:100%}.rotate-0,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-0{--tw-rotate:0deg}.rotate-90{--tw-rotate:90deg}.rotate-90,.skew-x-12{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.skew-x-12{--tw-skew-x:12deg}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-100,.scale-75{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-75{--tw-scale-x:.75;--tw-scale-y:.75}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.scale-95,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn .5s ease-in-out}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.animate-slide-up{animation:slideUp .3s ease-out}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.scroll-mt-8{scroll-margin-top:2rem}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1.5rem*var(--tw-space-x-reverse));margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)))}.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(2rem*var(--tw-space-x-reverse));margin-left:calc(2rem*(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-16>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(4rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.divide-slate-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(226 232 240/var(--tw-divide-opacity,1))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:16px}.rounded-3xl{border-radius:24px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:12px}.rounded-b-3xl{border-bottom-right-radius:24px;border-bottom-left-radius:24px}.rounded-l-md{border-top-left-radius:.375rem;border-bottom-left-radius:.375rem}.rounded-r-md{border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.rounded-t-3xl{border-top-left-radius:24px;border-top-right-radius:24px}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-r-4{border-right-width:4px}.border-t{border-top-width:1px}.border-t-4{border-top-width:4px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.border-blue-200\/50{border-color:rgba(191,219,254,.5)}.border-blue-300{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-blue-600{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.border-emerald-200\/50{border-color:rgba(167,243,208,.5)}.border-emerald-500{--tw-border-opacity:1;border-color:rgb(16 185 129/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-200\/50{border-color:rgba(229,231,235,.5)}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity,1))}.border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.border-green-200\/50{border-color:rgba(187,247,208,.5)}.border-green-300{--tw-border-opacity:1;border-color:rgb(134 239 172/var(--tw-border-opacity,1))}.border-green-400{--tw-border-opacity:1;border-color:rgb(74 222 128/var(--tw-border-opacity,1))}.border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.border-green-600{--tw-border-opacity:1;border-color:rgb(22 163 74/var(--tw-border-opacity,1))}.border-indigo-200{--tw-border-opacity:1;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.border-indigo-200\/50{border-color:rgba(199,210,254,.5)}.border-mercedes-blue{--tw-border-opacity:1;border-color:rgb(0 115 206/var(--tw-border-opacity,1))}.border-mercedes-silver{--tw-border-opacity:1;border-color:rgb(170 169 173/var(--tw-border-opacity,1))}.border-orange-200{--tw-border-opacity:1;border-color:rgb(254 215 170/var(--tw-border-opacity,1))}.border-orange-200\/50{border-color:hsla(32,98%,83%,.5)}.border-orange-300{--tw-border-opacity:1;border-color:rgb(253 186 116/var(--tw-border-opacity,1))}.border-orange-400{--tw-border-opacity:1;border-color:rgb(251 146 60/var(--tw-border-opacity,1))}.border-purple-200{--tw-border-opacity:1;border-color:rgb(233 213 255/var(--tw-border-opacity,1))}.border-purple-200\/50{border-color:rgba(233,213,255,.5)}.border-purple-600{--tw-border-opacity:1;border-color:rgb(147 51 234/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-red-200\/50{border-color:hsla(0,96%,89%,.5)}.border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.border-red-400{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.border-slate-200\/30{border-color:rgba(226,232,240,.3)}.border-slate-200\/50{border-color:rgba(226,232,240,.5)}.border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity,1))}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.border-white\/20{border-color:hsla(0,0%,100%,.2)}.border-white\/30{border-color:hsla(0,0%,100%,.3)}.border-white\/50{border-color:hsla(0,0%,100%,.5)}.border-yellow-200{--tw-border-opacity:1;border-color:rgb(254 240 138/var(--tw-border-opacity,1))}.border-yellow-300{--tw-border-opacity:1;border-color:rgb(253 224 71/var(--tw-border-opacity,1))}.border-yellow-400{--tw-border-opacity:1;border-color:rgb(250 204 21/var(--tw-border-opacity,1))}.border-yellow-500{--tw-border-opacity:1;border-color:rgb(234 179 8/var(--tw-border-opacity,1))}.border-t-slate-800{--tw-border-opacity:1;border-top-color:rgb(30 41 59/var(--tw-border-opacity,1))}.border-t-slate-900{--tw-border-opacity:1;border-top-color:rgb(15 23 42/var(--tw-border-opacity,1))}.border-t-transparent{border-top-color:transparent}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\/20{background-color:rgba(0,0,0,.2)}.bg-black\/30{background-color:rgba(0,0,0,.3)}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-black\/60{background-color:rgba(0,0,0,.6)}.bg-black\/70{background-color:rgba(0,0,0,.7)}.bg-black\/75{background-color:rgba(0,0,0,.75)}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-400{--tw-bg-opacity:1;background-color:rgb(96 165 250/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-50\/50{background-color:rgba(239,246,255,.5)}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-cyan-100{--tw-bg-opacity:1;background-color:rgb(207 250 254/var(--tw-bg-opacity,1))}.bg-emerald-100{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.bg-error{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.bg-green-400{--tw-bg-opacity:1;background-color:rgb(74 222 128/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-green-50\/50{background-color:rgba(240,253,244,.5)}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-green-600{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.bg-indigo-100{--tw-bg-opacity:1;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.bg-indigo-50{--tw-bg-opacity:1;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.bg-indigo-50\/50{background-color:rgba(238,242,255,.5)}.bg-indigo-500{--tw-bg-opacity:1;background-color:rgb(99 102 241/var(--tw-bg-opacity,1))}.bg-indigo-600{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.bg-info{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-mercedes-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-mercedes-blue{--tw-bg-opacity:1;background-color:rgb(0 115 206/var(--tw-bg-opacity,1))}.bg-mercedes-silver{--tw-bg-opacity:1;background-color:rgb(170 169 173/var(--tw-bg-opacity,1))}.bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.bg-orange-400{--tw-bg-opacity:1;background-color:rgb(251 146 60/var(--tw-bg-opacity,1))}.bg-orange-50{--tw-bg-opacity:1;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-orange-50\/50{background-color:rgba(255,247,237,.5)}.bg-orange-500{--tw-bg-opacity:1;background-color:rgb(249 115 22/var(--tw-bg-opacity,1))}.bg-orange-600{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity,1))}.bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.bg-purple-400{--tw-bg-opacity:1;background-color:rgb(192 132 252/var(--tw-bg-opacity,1))}.bg-purple-50{--tw-bg-opacity:1;background-color:rgb(250 245 255/var(--tw-bg-opacity,1))}.bg-purple-50\/50{background-color:rgba(250,245,255,.5)}.bg-purple-500{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.bg-purple-600{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-50\/50{background-color:hsla(0,86%,97%,.5)}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.bg-slate-300{--tw-bg-opacity:1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.bg-slate-400{--tw-bg-opacity:1;background-color:rgb(148 163 184/var(--tw-bg-opacity,1))}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-slate-50\/50{background-color:rgba(248,250,252,.5)}.bg-slate-500{--tw-bg-opacity:1;background-color:rgb(100 116 139/var(--tw-bg-opacity,1))}.bg-slate-600{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity,1))}.bg-slate-700{--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-success{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-teal-100{--tw-bg-opacity:1;background-color:rgb(204 251 241/var(--tw-bg-opacity,1))}.bg-teal-500{--tw-bg-opacity:1;background-color:rgb(20 184 166/var(--tw-bg-opacity,1))}.bg-warning{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color:hsla(0,0%,100%,.1)}.bg-white\/15{background-color:hsla(0,0%,100%,.15)}.bg-white\/20{background-color:hsla(0,0%,100%,.2)}.bg-white\/30{background-color:hsla(0,0%,100%,.3)}.bg-white\/40{background-color:hsla(0,0%,100%,.4)}.bg-white\/50{background-color:hsla(0,0%,100%,.5)}.bg-white\/60{background-color:hsla(0,0%,100%,.6)}.bg-white\/80{background-color:hsla(0,0%,100%,.8)}.bg-white\/90{background-color:hsla(0,0%,100%,.9)}.bg-yellow-100{--tw-bg-opacity:1;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.bg-yellow-400{--tw-bg-opacity:1;background-color:rgb(250 204 21/var(--tw-bg-opacity,1))}.bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.bg-yellow-500{--tw-bg-opacity:1;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}.bg-yellow-600{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.bg-opacity-50{--tw-bg-opacity:0.5}.bg-opacity-75{--tw-bg-opacity:0.75}.bg-opacity-95{--tw-bg-opacity:0.95}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-tr{background-image:linear-gradient(to top right,var(--tw-gradient-stops))}.from-amber-500{--tw-gradient-from:#f59e0b var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-100{--tw-gradient-from:#dbeafe var(--tw-gradient-from-position);--tw-gradient-to:rgba(219,234,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-300\/10{--tw-gradient-from:rgba(147,197,253,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(147,197,253,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-400{--tw-gradient-from:#60a5fa var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-400\/20{--tw-gradient-from:rgba(96,165,250,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-50{--tw-gradient-from:#eff6ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(239,246,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from:#3b82f6 var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,130,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-500\/10{--tw-gradient-from:rgba(59,130,246,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,130,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-600{--tw-gradient-from:#2563eb var(--tw-gradient-from-position);--tw-gradient-to:rgba(37,99,235,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-600\/10{--tw-gradient-from:rgba(37,99,235,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(37,99,235,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-400{--tw-gradient-from:#34d399 var(--tw-gradient-from-position);--tw-gradient-to:rgba(52,211,153,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-50{--tw-gradient-from:#ecfdf5 var(--tw-gradient-from-position);--tw-gradient-to:rgba(236,253,245,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-500{--tw-gradient-from:#10b981 var(--tw-gradient-from-position);--tw-gradient-to:rgba(16,185,129,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-100{--tw-gradient-from:#dcfce7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(220,252,231,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-50{--tw-gradient-from:#f0fdf4 var(--tw-gradient-from-position);--tw-gradient-to:rgba(240,253,244,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-500{--tw-gradient-from:#22c55e var(--tw-gradient-from-position);--tw-gradient-to:rgba(34,197,94,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-500\/10{--tw-gradient-from:rgba(34,197,94,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(34,197,94,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-indigo-500{--tw-gradient-from:#6366f1 var(--tw-gradient-from-position);--tw-gradient-to:rgba(99,102,241,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-50{--tw-gradient-from:#fff7ed var(--tw-gradient-from-position);--tw-gradient-to:rgba(255,247,237,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-500{--tw-gradient-from:#f97316 var(--tw-gradient-from-position);--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-500\/10{--tw-gradient-from:rgba(249,115,22,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-100{--tw-gradient-from:#f3e8ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(243,232,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-400\/20{--tw-gradient-from:rgba(192,132,252,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(192,132,252,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-50{--tw-gradient-from:#faf5ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(250,245,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-500\/10{--tw-gradient-from:rgba(168,85,247,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-500{--tw-gradient-from:#ef4444 var(--tw-gradient-from-position);--tw-gradient-to:rgba(239,68,68,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-500\/10{--tw-gradient-from:rgba(239,68,68,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(239,68,68,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-100{--tw-gradient-from:#f1f5f9 var(--tw-gradient-from-position);--tw-gradient-to:rgba(241,245,249,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-50{--tw-gradient-from:#f8fafc var(--tw-gradient-from-position);--tw-gradient-to:rgba(248,250,252,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-500{--tw-gradient-from:#64748b var(--tw-gradient-from-position);--tw-gradient-to:rgba(100,116,139,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-900{--tw-gradient-from:#0f172a var(--tw-gradient-from-position);--tw-gradient-to:rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-transparent{--tw-gradient-from:transparent var(--tw-gradient-from-position);--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-violet-500{--tw-gradient-from:#8b5cf6 var(--tw-gradient-from-position);--tw-gradient-to:rgba(139,92,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-white{--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from:#eab308 var(--tw-gradient-from-position);--tw-gradient-to:rgba(234,179,8,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-blue-100{--tw-gradient-to:rgba(219,234,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#dbeafe var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-blue-200{--tw-gradient-to:rgba(191,219,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#bfdbfe var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-blue-50{--tw-gradient-to:rgba(239,246,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#eff6ff var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-blue-900{--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#1e3a8a var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-green-50{--tw-gradient-to:rgba(240,253,244,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#f0fdf4 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-green-500{--tw-gradient-to:rgba(34,197,94,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#22c55e var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-indigo-50{--tw-gradient-to:rgba(238,242,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#eef2ff var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-purple-500{--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#a855f7 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-red-50{--tw-gradient-to:hsla(0,86%,97%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fef2f2 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white\/20{--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),hsla(0,0%,100%,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white\/5{--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),hsla(0,0%,100%,.05) var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-amber-600{--tw-gradient-to:#d97706 var(--tw-gradient-to-position)}.to-blue-200{--tw-gradient-to:#bfdbfe var(--tw-gradient-to-position)}.to-blue-50{--tw-gradient-to:#eff6ff var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.to-emerald-50{--tw-gradient-to:#ecfdf5 var(--tw-gradient-to-position)}.to-emerald-500{--tw-gradient-to:#10b981 var(--tw-gradient-to-position)}.to-emerald-500\/10{--tw-gradient-to:rgba(16,185,129,.1) var(--tw-gradient-to-position)}.to-emerald-600{--tw-gradient-to:#059669 var(--tw-gradient-to-position)}.to-green-200{--tw-gradient-to:#bbf7d0 var(--tw-gradient-to-position)}.to-green-50{--tw-gradient-to:#f0fdf4 var(--tw-gradient-to-position)}.to-green-600{--tw-gradient-to:#16a34a var(--tw-gradient-to-position)}.to-indigo-100{--tw-gradient-to:#e0e7ff var(--tw-gradient-to-position)}.to-indigo-300\/10{--tw-gradient-to:rgba(165,180,252,.1) var(--tw-gradient-to-position)}.to-indigo-50{--tw-gradient-to:#eef2ff var(--tw-gradient-to-position)}.to-indigo-500{--tw-gradient-to:#6366f1 var(--tw-gradient-to-position)}.to-indigo-500\/10{--tw-gradient-to:rgba(99,102,241,.1) var(--tw-gradient-to-position)}.to-indigo-600{--tw-gradient-to:#4f46e5 var(--tw-gradient-to-position)}.to-indigo-600\/20{--tw-gradient-to:rgba(79,70,229,.2) var(--tw-gradient-to-position)}.to-indigo-900{--tw-gradient-to:#312e81 var(--tw-gradient-to-position)}.to-orange-50{--tw-gradient-to:#fff7ed var(--tw-gradient-to-position)}.to-orange-500{--tw-gradient-to:#f97316 var(--tw-gradient-to-position)}.to-orange-600{--tw-gradient-to:#ea580c var(--tw-gradient-to-position)}.to-pink-50{--tw-gradient-to:#fdf2f8 var(--tw-gradient-to-position)}.to-pink-500\/10{--tw-gradient-to:rgba(236,72,153,.1) var(--tw-gradient-to-position)}.to-pink-600\/20{--tw-gradient-to:rgba(219,39,119,.2) var(--tw-gradient-to-position)}.to-purple-200{--tw-gradient-to:#e9d5ff var(--tw-gradient-to-position)}.to-purple-50{--tw-gradient-to:#faf5ff var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to:#9333ea var(--tw-gradient-to-position)}.to-purple-600\/10{--tw-gradient-to:rgba(147,51,234,.1) var(--tw-gradient-to-position)}.to-red-50{--tw-gradient-to:#fef2f2 var(--tw-gradient-to-position)}.to-red-500{--tw-gradient-to:#ef4444 var(--tw-gradient-to-position)}.to-red-500\/10{--tw-gradient-to:rgba(239,68,68,.1) var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to:#dc2626 var(--tw-gradient-to-position)}.to-rose-500{--tw-gradient-to:#f43f5e var(--tw-gradient-to-position)}.to-slate-100{--tw-gradient-to:#f1f5f9 var(--tw-gradient-to-position)}.to-slate-200{--tw-gradient-to:#e2e8f0 var(--tw-gradient-to-position)}.to-slate-600{--tw-gradient-to:#475569 var(--tw-gradient-to-position)}.to-slate-700{--tw-gradient-to:#334155 var(--tw-gradient-to-position)}.to-teal-50{--tw-gradient-to:#f0fdfa var(--tw-gradient-to-position)}.to-teal-600{--tw-gradient-to:#0d9488 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.to-violet-500\/10{--tw-gradient-to:rgba(139,92,246,.1) var(--tw-gradient-to-position)}.to-white{--tw-gradient-to:#fff var(--tw-gradient-to-position)}.to-yellow-600{--tw-gradient-to:#ca8a04 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.fill-current{fill:currentColor}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-20{padding-bottom:5rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pb-8{padding-bottom:2rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-10{padding-right:2.5rem}.pr-12{padding-right:3rem}.pr-20{padding-right:5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.font-mercedes{font-family:Mercedes-Benz Text,Arial,sans-serif}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-8xl{font-size:6rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-4{line-height:1rem}.leading-6{line-height:1.5rem}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-amber-900{--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-blue-100{--tw-text-opacity:1;color:rgb(219 234 254/var(--tw-text-opacity,1))}.text-blue-200{--tw-text-opacity:1;color:rgb(191 219 254/var(--tw-text-opacity,1))}.text-blue-300{--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-blue-900{--tw-text-opacity:1;color:rgb(30 58 138/var(--tw-text-opacity,1))}.text-cyan-600{--tw-text-opacity:1;color:rgb(8 145 178/var(--tw-text-opacity,1))}.text-emerald-300{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.text-error{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-gray-200{--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-green-200{--tw-text-opacity:1;color:rgb(187 247 208/var(--tw-text-opacity,1))}.text-green-300{--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-green-900{--tw-text-opacity:1;color:rgb(20 83 45/var(--tw-text-opacity,1))}.text-indigo-400{--tw-text-opacity:1;color:rgb(129 140 248/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-indigo-800{--tw-text-opacity:1;color:rgb(55 48 163/var(--tw-text-opacity,1))}.text-indigo-900{--tw-text-opacity:1;color:rgb(49 46 129/var(--tw-text-opacity,1))}.text-mercedes-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-mercedes-blue{--tw-text-opacity:1;color:rgb(0 115 206/var(--tw-text-opacity,1))}.text-mercedes-gray{--tw-text-opacity:1;color:rgb(94 94 94/var(--tw-text-opacity,1))}.text-mercedes-silver{--tw-text-opacity:1;color:rgb(170 169 173/var(--tw-text-opacity,1))}.text-orange-500{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity,1))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity,1))}.text-orange-700{--tw-text-opacity:1;color:rgb(194 65 12/var(--tw-text-opacity,1))}.text-orange-800{--tw-text-opacity:1;color:rgb(154 52 18/var(--tw-text-opacity,1))}.text-pink-600{--tw-text-opacity:1;color:rgb(219 39 119/var(--tw-text-opacity,1))}.text-purple-500{--tw-text-opacity:1;color:rgb(168 85 247/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-purple-800{--tw-text-opacity:1;color:rgb(107 33 168/var(--tw-text-opacity,1))}.text-purple-900{--tw-text-opacity:1;color:rgb(88 28 135/var(--tw-text-opacity,1))}.text-red-200{--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity,1))}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-red-900{--tw-text-opacity:1;color:rgb(127 29 29/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.text-slate-800{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.text-success{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity,1))}.text-teal-600{--tw-text-opacity:1;color:rgb(13 148 136/var(--tw-text-opacity,1))}.text-transparent{color:transparent}.text-warning{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-yellow-200{--tw-text-opacity:1;color:rgb(254 240 138/var(--tw-text-opacity,1))}.text-yellow-300{--tw-text-opacity:1;color:rgb(253 224 71/var(--tw-text-opacity,1))}.text-yellow-400{--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity,1))}.text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity,1))}.text-yellow-600{--tw-text-opacity:1;color:rgb(202 138 4/var(--tw-text-opacity,1))}.text-yellow-700{--tw-text-opacity:1;color:rgb(161 98 7/var(--tw-text-opacity,1))}.text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14/var(--tw-text-opacity,1))}.text-yellow-900{--tw-text-opacity:1;color:rgb(113 63 18/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.overline{text-decoration-line:overline}.placeholder-slate-500::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(100 116 139/var(--tw-placeholder-opacity,1))}.placeholder-slate-500::placeholder{--tw-placeholder-opacity:1;color:rgb(100 116 139/var(--tw-placeholder-opacity,1))}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow-inner,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-2{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-mercedes-blue{--tw-ring-opacity:1;--tw-ring-color:rgb(0 115 206/var(--tw-ring-opacity,1))}.blur{--tw-blur:blur(8px)}.blur,.blur-2xl{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-2xl{--tw-blur:blur(40px)}.blur-3xl{--tw-blur:blur(64px)}.blur-3xl,.drop-shadow{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06))}.\!filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-md,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px)}.backdrop-blur-xl,.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.delay-1000{transition-delay:1s}.delay-500{transition-delay:.5s}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.glassmorphism{background:hsla(0,0%,100%,.05);border-radius:16px;box-shadow:0 8px 32px 0 rgba(31,38,135,.37);border:1px solid hsla(0,0%,100%,.18)}.glassmorphism,.glassmorphism-dark{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.glassmorphism-dark{background:rgba(0,0,0,.05);border-radius:16px;box-shadow:0 8px 32px 0 rgba(0,0,0,.37);border:1px solid rgba(0,0,0,.18)}.text-shadow{text-shadow:0 2px 4px rgba(0,0,0,.1)}.flash-message{position:fixed;top:1rem;right:1rem;z-index:50;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:16px;border-width:1px;padding:1rem 1.5rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s;background:hsla(0,0%,100%,.08);backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);-webkit-backdrop-filter:blur(40px) saturate(200%) brightness(130%) contrast(110%);border:1px solid hsla(0,0%,100%,.25);box-shadow:0 32px 64px rgba(0,0,0,.25),0 12px 24px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px hsla(0,0%,100%,.1);animation:flash-slide-in .5s cubic-bezier(.4,0,.2,1);transition:all .5s cubic-bezier(.4,0,.2,1)}.dark .flash-message{background:rgba(0,0,0,.2);backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(120%) contrast(115%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 32px 64px rgba(0,0,0,.6),0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.flash-message:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 40px 80px rgba(0,0,0,.3),0 16px 32px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px hsla(0,0%,100%,.15)}.dark .flash-message:hover{box-shadow:0 40px 80px rgba(0,0,0,.7),0 16px 32px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1)}.flash-message.info{--tw-text-opacity:1;color:rgb(219 234 254/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(59,130,246,.2),rgba(147,197,253,.15) 50%,rgba(59,130,246,.1));border:1px solid rgba(59,130,246,.3)}.flash-message.success{--tw-text-opacity:1;color:rgb(220 252 231/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(34,197,94,.2),rgba(134,239,172,.15) 50%,rgba(34,197,94,.1));border:1px solid rgba(34,197,94,.3)}.flash-message.warning{--tw-text-opacity:1;color:rgb(254 249 195/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(245,158,11,.2),rgba(252,211,77,.15) 50%,rgba(245,158,11,.1));border:1px solid rgba(245,158,11,.3)}.flash-message.error{--tw-text-opacity:1;color:rgb(254 226 226/var(--tw-text-opacity,1));background:linear-gradient(135deg,rgba(239,68,68,.2),hsla(0,94%,82%,.15) 50%,rgba(239,68,68,.1));border:1px solid rgba(239,68,68,.3)}@keyframes flash-slide-in{0%{opacity:0;transform:translateX(100%) translateY(-20px) scale(.9);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}50%{opacity:.8;transform:translateX(20px) translateY(-10px) scale(1.05);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}to{opacity:1;transform:translateX(0) translateY(0) scale(1);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px)}}@keyframes flash-slide-out{0%{opacity:1;transform:translateX(0) translateY(0) scale(1)}to{opacity:0;transform:translateX(100%) translateY(-20px) scale(.9)}}.flash-message.hiding{animation:flash-slide-out .4s cubic-bezier(.4,0,.2,1) forwards}.dnd-toggle{position:relative;display:inline-flex;height:1.5rem;width:2.75rem;align-items:center;border-radius:9999px;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.dnd-toggle:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1));--tw-ring-offset-width:2px}.dnd-toggle{background:rgba(156,163,175,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(156,163,175,.2)}.dnd-toggle.active{background:rgba(239,68,68,.3);border:1px solid rgba(239,68,68,.4)}.dnd-toggle-slider{display:inline-block;height:1rem;width:1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:9999px;--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:hsla(0,0%,100%,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 4px 8px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.1);margin:.125rem}.dnd-toggle.active .dnd-toggle-slider{transform:translateX(1.25rem);background:#fff;box-shadow:0 6px 12px rgba(239,68,68,.3),0 3px 6px rgba(239,68,68,.2)}.dnd-indicator{position:fixed;top:1rem;left:1rem;z-index:50;display:flex;align-items:center;border-radius:.5rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:rgba(239,68,68,.1);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);border:1px solid rgba(239,68,68,.3);color:#ef4444;transform:translateY(-100%);opacity:0}.dnd-indicator.active{transform:translateY(0);opacity:1}.dnd-modal{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(0,0,0,.3);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.dnd-modal-content{width:100%;max-width:28rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:16px;padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background:hsla(0,0%,100%,.1);backdrop-filter:blur(40px) saturate(200%) brightness(120%);-webkit-backdrop-filter:blur(40px) saturate(200%) brightness(120%);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 25px 50px rgba(0,0,0,.25),0 8px 16px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.4)}.dark .dnd-modal-content{background:rgba(0,0,0,.3);backdrop-filter:blur(40px) saturate(180%) brightness(110%);-webkit-backdrop-filter:blur(40px) saturate(180%) brightness(110%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 25px 50px rgba(0,0,0,.6),0 8px 16px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2)}.flash-message.dnd-suppressed{animation:flash-fade-in .3s ease-out;opacity:.3;transform:scale(.95);pointer-events:none}@keyframes flash-fade-in{0%{opacity:0;transform:scale(.9)}to{opacity:.3;transform:scale(.95)}}.dnd-counter{position:absolute;top:-.5rem;right:-.5rem;display:flex;height:1.25rem;width:1.25rem;align-items:center;justify-content:center;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1));font-size:.75rem;line-height:1rem;font-weight:700;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));background:rgba(239,68,68,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);animation:dnd-counter-bounce .5s ease-out}@keyframes dnd-counter-bounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.mercedes-background:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' fill='currentColor' opacity='.03'%3E%3Cpath d='M58.6 4.5C53 1.6 46.7 0 40 0S27 1.6 21.4 4.5C8.7 11.2 0 24.6 0 40s8.7 28.8 21.5 35.5C27 78.3 33.3 80 40 80s12.9-1.7 18.5-4.6C71.3 68.8 80 55.4 80 40S71.3 11.2 58.6 4.5M4 40c0-13.1 7-24.5 17.5-30.9C26.6 6 32.5 4.2 39 4l-4.5 32.7-13 10.1L8.3 57.1C5.6 52 4 46.2 4 40m54.6 30.8C53.1 74.1 46.8 76 40 76s-13.2-1.9-18.6-5.2c-4.9-2.9-8.9-6.9-11.9-11.7l11.9-4.9L40 46.6l18.6 7.5 12 4.9c-3 4.9-7.2 8.9-12 11.8m0-24-12.9-10L41.1 4c6.3.2 12.3 2 17.4 5.1C69 15.4 76 26.9 76 40c0 6.2-1.5 12-4.3 17.1z'/%3E%3C/svg%3E");background-position:50%;background-repeat:repeat;background-size:120px 120px;pointer-events:none;opacity:.03;transition:opacity .3s ease}.dark .mercedes-background:before{opacity:.015;filter:invert(1) brightness(.3);background-size:150px 150px}.navbar{position:sticky!important;top:0!important;z-index:50!important;width:100%!important;left:0!important;right:0!important;--navbar-blur:40px;--navbar-opacity:0.15;background:rgba(255,255,255,var(--navbar-opacity,.15))!important;backdrop-filter:blur(var(--navbar-blur,40px)) saturate(200%) brightness(110%) contrast(105%)!important;-webkit-backdrop-filter:blur(var(--navbar-blur,40px)) saturate(200%) brightness(110%) contrast(105%)!important;box-shadow:0 8px 32px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.15)!important;border-bottom:1px solid hsla(0,0%,100%,.2)!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.dark .navbar{--navbar-dark-opacity:0.25;background:rgba(0,0,0,var(--navbar-dark-opacity,.25))!important;backdrop-filter:blur(calc(var(--navbar-blur, 40px) + 5px)) saturate(180%) brightness(120%) contrast(115%)!important;-webkit-backdrop-filter:blur(calc(var(--navbar-blur, 40px) + 5px)) saturate(180%) brightness(120%) contrast(115%)!important;box-shadow:0 8px 32px rgba(0,0,0,.4),0 2px 8px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.15),0 0 0 1px hsla(0,0%,100%,.08)!important;border-bottom:1px solid hsla(0,0%,100%,.1)!important}.navbar.scrolled{--navbar-blur:50px;--navbar-opacity:0.25;background:rgba(255,255,255,var(--navbar-opacity,.25))!important;backdrop-filter:blur(var(--navbar-blur,50px)) saturate(220%) brightness(115%) contrast(110%)!important;-webkit-backdrop-filter:blur(var(--navbar-blur,50px)) saturate(220%) brightness(115%) contrast(110%)!important;box-shadow:0 12px 40px rgba(0,0,0,.15),0 4px 12px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.4),0 0 0 1px hsla(0,0%,100%,.2)!important}.dark .navbar.scrolled{--navbar-dark-opacity:0.35;background:rgba(0,0,0,var(--navbar-dark-opacity,.35))!important;backdrop-filter:blur(calc(var(--navbar-blur, 50px) + 5px)) saturate(200%) brightness(125%) contrast(120%)!important;-webkit-backdrop-filter:blur(calc(var(--navbar-blur, 50px) + 5px)) saturate(200%) brightness(125%) contrast(120%)!important;box-shadow:0 12px 40px rgba(0,0,0,.5),0 4px 12px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.1)!important}.navbar-menu-new{display:flex;align-items:center;justify-content:center}.navbar-menu-new>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.125rem*var(--tw-space-x-reverse));margin-left:calc(.125rem*(1 - var(--tw-space-x-reverse)))}@media (min-width:768px){.navbar-menu-new>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}}.navbar-menu-new{max-width:100%;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;background:hsla(0,0%,100%,.1);backdrop-filter:blur(25px) saturate(170%) brightness(108%);-webkit-backdrop-filter:blur(25px) saturate(170%) brightness(108%);border-radius:16px;padding:8px;margin:0 16px;border:1px solid hsla(0,0%,100%,.15);box-shadow:0 6px 20px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05);transition:all .3s cubic-bezier(.4,0,.2,1)}.dark .navbar-menu-new{background:rgba(0,0,0,.2);backdrop-filter:blur(30px) saturate(150%) brightness(115%);-webkit-backdrop-filter:blur(30px) saturate(150%) brightness(115%);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 6px 20px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.1),0 0 0 1px hsla(0,0%,100%,.03)}.navbar-menu-new::-webkit-scrollbar{display:none}.navbar-menu-new:hover{backdrop-filter:blur(35px) saturate(190%) brightness(112%);-webkit-backdrop-filter:blur(35px) saturate(190%) brightness(112%);box-shadow:0 8px 25px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1);transform:translateY(-1px)}.dark .navbar-menu-new:hover{backdrop-filter:blur(40px) saturate(170%) brightness(120%);-webkit-backdrop-filter:blur(40px) saturate(170%) brightness(120%);box-shadow:0 8px 25px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.15),0 0 0 1px hsla(0,0%,100%,.05)}.nav-item{display:flex;align-items:center}.nav-item>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.375rem*var(--tw-space-x-reverse));margin-left:calc(.375rem*(1 - var(--tw-space-x-reverse)))}.nav-item{border-radius:12px;padding:.625rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;color:rgba(15,23,42,.85);background:hsla(0,0%,100%,.08);backdrop-filter:blur(15px) saturate(140%);-webkit-backdrop-filter:blur(15px) saturate(140%);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 4px 12px rgba(0,0,0,.05),inset 0 1px 0 hsla(0,0%,100%,.15);position:relative;overflow:hidden;animation:nav-item-entrance .6s ease-out}.nav-item:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);transition:left .5s}.nav-item:hover:before{left:100%}.nav-item:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg at 50% 50%,transparent 0deg,hsla(0,0%,100%,.1) 30deg,transparent 60deg);opacity:0;transition:opacity .3s ease;pointer-events:none;animation:rotate 3s linear infinite}.nav-item:hover:after{opacity:1}.dark .nav-item{color:hsla(0,0%,100%,.85);background:rgba(0,0,0,.15);backdrop-filter:blur(20px) saturate(130%);-webkit-backdrop-filter:blur(20px) saturate(130%);border:1px solid hsla(0,0%,100%,.08);box-shadow:0 4px 12px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.08)}.nav-item:hover{color:#0f172a;background:hsla(0,0%,100%,.2);backdrop-filter:blur(25px) saturate(160%) brightness(110%);-webkit-backdrop-filter:blur(25px) saturate(160%) brightness(110%);border:1px solid hsla(0,0%,100%,.25);box-shadow:0 8px 20px rgba(0,0,0,.12),inset 0 1px 0 hsla(0,0%,100%,.3),0 0 0 1px hsla(0,0%,100%,.1);transform:translateY(-2px) scale(1.02)}.dark .nav-item:hover{color:#fff;background:rgba(0,0,0,.25);backdrop-filter:blur(30px) saturate(150%) brightness(120%);-webkit-backdrop-filter:blur(30px) saturate(150%) brightness(120%);border:1px solid hsla(0,0%,100%,.15);box-shadow:0 8px 20px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.15),0 0 0 1px hsla(0,0%,100%,.05)}.nav-item.active{color:#0f172a;background:hsla(0,0%,100%,.35);backdrop-filter:blur(35px) saturate(180%) brightness(115%);-webkit-backdrop-filter:blur(35px) saturate(180%) brightness(115%);border:1px solid hsla(0,0%,100%,.4);box-shadow:0 12px 24px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px rgba(59,130,246,.3);transform:translateY(-1px);animation:nav-item-active-glow 2s ease-in-out infinite alternate}.dark .nav-item.active{color:#fff;background:rgba(0,0,0,.4);backdrop-filter:blur(40px) saturate(160%) brightness(125%);-webkit-backdrop-filter:blur(40px) saturate(160%) brightness(125%);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 12px 24px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px rgba(59,130,246,.2)}@keyframes nav-item-entrance{0%{opacity:0;transform:translateY(10px) scale(.95);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}to{opacity:1;transform:translateY(0) scale(1);-webkit-backdrop-filter:blur(15px) saturate(140%);backdrop-filter:blur(15px) saturate(140%)}}@keyframes nav-item-active-glow{0%{box-shadow:0 12px 24px rgba(0,0,0,.15),inset 0 1px 0 hsla(0,0%,100%,.5),0 0 0 1px rgba(59,130,246,.3)}to{box-shadow:0 16px 32px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.6),0 0 0 2px rgba(59,130,246,.5)}}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.navbar:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,hsla(0,0%,100%,.1) 1px,transparent 0),radial-gradient(circle at 80% 50%,hsla(0,0%,100%,.1) 1px,transparent 0),radial-gradient(circle at 40% 20%,hsla(0,0%,100%,.05) 1px,transparent 0),radial-gradient(circle at 60% 80%,hsla(0,0%,100%,.05) 1px,transparent 0);opacity:0;animation:glassmorphism-particles 8s ease-in-out infinite;pointer-events:none}.dark .navbar:before{background:radial-gradient(circle at 20% 50%,hsla(0,0%,100%,.05) 1px,transparent 0),radial-gradient(circle at 80% 50%,hsla(0,0%,100%,.05) 1px,transparent 0),radial-gradient(circle at 40% 20%,hsla(0,0%,100%,.03) 1px,transparent 0),radial-gradient(circle at 60% 80%,hsla(0,0%,100%,.03) 1px,transparent 0)}@keyframes glassmorphism-particles{0%,to{opacity:0;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.dark-mode-toggle-new{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:9999px;padding:.5rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:rgba(241,245,249,.8);border:1px solid hsla(0,0%,100%,.7);box-shadow:0 2px 8px rgba(0,0,0,.05),0 1px 2px rgba(0,0,0,.04);color:#334155;z-index:100}.dark-mode-toggle-new:hover{--tw-translate-y:-0.125rem;background:rgba(241,245,249,.9);box-shadow:0 8px 16px rgba(0,0,0,.08),0 2px 4px rgba(0,0,0,.06)}.dark-mode-toggle-new:active,.dark-mode-toggle-new:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark-mode-toggle-new:active{--tw-scale-x:.95;--tw-scale-y:.95;transition:transform .1s}.dark .dark-mode-toggle-new{background:rgba(30,41,59,.8);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 2px 8px rgba(0,0,0,.2),0 1px 2px rgba(0,0,0,.1);color:#e2e8f0}.dark .dark-mode-toggle-new:hover{background:rgba(30,41,59,.9);box-shadow:0 8px 16px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.15)}.dark-mode-toggle-new .moon-icon,.dark-mode-toggle-new .sun-icon{position:absolute;top:50%;left:50%;--tw-translate-x:-50%;--tw-translate-y:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.dark-mode-toggle-new .moon-icon:not(.hidden),.dark-mode-toggle-new .sun-icon:not(.hidden){animation:spin-in .5s cubic-bezier(.25,1,.5,1) forwards}@keyframes spin-in{0%{opacity:0;transform:translateY(10px) scale(.7) rotate(20deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}.dark .sun-icon{display:none}.dark .moon-icon,.sun-icon{display:block}.moon-icon{display:none}.user-menu-button-new{display:flex;align-items:center}.user-menu-button-new>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.375rem*var(--tw-space-x-reverse));margin-left:calc(.375rem*(1 - var(--tw-space-x-reverse)))}.user-menu-button-new{border-radius:.5rem;padding:.25rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:rgba(241,245,249,.6);border:1px solid hsla(0,0%,100%,.6);box-shadow:0 2px 8px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02)}.user-menu-button-new:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));background:rgba(241,245,249,.8);box-shadow:0 8px 16px rgba(0,0,0,.06),0 2px 4px rgba(0,0,0,.04)}.dark .user-menu-button-new{background:rgba(30,41,59,.6);border:1px solid hsla(0,0%,100%,.08);box-shadow:0 2px 8px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.1)}.dark .user-menu-button-new:hover{background:rgba(30,41,59,.8);box-shadow:0 8px 16px rgba(0,0,0,.15),0 2px 4px rgba(0,0,0,.1)}.user-avatar-new{display:flex;height:1.75rem;width:1.75rem;align-items:center;justify-content:center;border-radius:9999px;font-size:.75rem;line-height:1rem;font-weight:600;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:linear-gradient(135deg,#000,#333);box-shadow:0 2px 4px rgba(0,0,0,.2),0 1px 2px rgba(0,0,0,.1)}.dark .user-avatar-new{background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:#0f172a;box-shadow:0 2px 4px rgba(0,0,0,.3),0 1px 2px rgba(0,0,0,.2)}.login-button-new{display:flex;align-items:center;border-radius:.5rem;padding:.375rem .75rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:#000;color:#fff;border:1px solid hsla(0,0%,100%,.1);box-shadow:0 2px 8px rgba(0,0,0,.1),0 1px 2px rgba(0,0,0,.08)}.login-button-new:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));background:#333;box-shadow:0 8px 16px rgba(0,0,0,.15),0 3px 4px rgba(0,0,0,.1)}.dark .login-button-new{background:#fff;color:#000;border:1px solid rgba(0,0,0,.1);box-shadow:0 2px 8px rgba(0,0,0,.2),0 1px 2px rgba(0,0,0,.15)}.dark .login-button-new:hover{background:#f1f5f9;box-shadow:0 8px 16px rgba(0,0,0,.25),0 3px 4px rgba(0,0,0,.2)}.mobile-menu-new{z-index:40;width:100%;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:hsla(0,0%,100%,.8);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 4px 20px rgba(0,0,0,.06);max-height:0;opacity:0}.mobile-menu-new,.mobile-menu-new.open{border-bottom:1px solid rgba(241,245,249,.8)}.mobile-menu-new.open{max-height:400px;opacity:1}.dark .mobile-menu-new{background:rgba(15,23,42,.8);box-shadow:0 4px 20px rgba(0,0,0,.2);border-bottom:1px solid rgba(30,41,59,.8)}.mobile-nav-item{display:flex;align-items:center}.mobile-nav-item>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.625rem*var(--tw-space-x-reverse));margin-left:calc(.625rem*(1 - var(--tw-space-x-reverse)))}.mobile-nav-item{border-radius:.5rem;padding:.625rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.mobile-nav-item:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.mobile-nav-item:hover{background:rgba(241,245,249,.8)}.dark .mobile-nav-item:hover{background:rgba(30,41,59,.6)}.mobile-nav-item.active{background:rgba(241,245,249,.9);color:#000;font-weight:500}.dark .mobile-nav-item.active{background:rgba(30,41,59,.8);color:#fff}.mb-stat-card{background:linear-gradient(135deg,rgba(240,249,255,.6),rgba(230,242,255,.6));color:#0f172a;position:relative;overflow:hidden;border:none;border-radius:var(--card-radius);backdrop-filter:blur(20px) saturate(180%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(180%) brightness(110%);box-shadow:0 25px 50px rgba(0,0,0,.15),0 0 0 1px hsla(0,0%,100%,.1);padding:1.5rem;margin:1rem;transition:transform .3s ease,box-shadow .3s ease}.dark .mb-stat-card{background:linear-gradient(135deg,rgba(0,0,0,.7),hsla(0,0%,4%,.7));color:var(--text-primary,#f8fafc);box-shadow:0 25px 50px rgba(0,0,0,.3),0 0 0 1px hsla(0,0%,100%,.05)}.job-card,.stats-card{border-radius:12px;border-width:1px;border-color:rgba(229,231,235,.7);background-color:hsla(0,0%,100%,.6);--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(40px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.job-card:is(.dark *),.stats-card:is(.dark *){border-color:rgba(51,65,85,.2);background-color:rgba(0,0,0,.8)}.job-card,.stats-card{backdrop-filter:blur(24px) saturate(200%) brightness(120%);-webkit-backdrop-filter:blur(24px) saturate(200%) brightness(120%);box-shadow:0 25px 50px rgba(0,0,0,.2),0 0 0 1px hsla(0,0%,100%,.1);border-radius:var(--card-radius)}footer{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background:hsla(0,0%,100%,.1);backdrop-filter:blur(30px) saturate(180%) brightness(120%);-webkit-backdrop-filter:blur(30px) saturate(180%) brightness(120%);border-top:1px solid hsla(0,0%,100%,.2);box-shadow:0 -8px 32px rgba(0,0,0,.1),0 -2px 8px rgba(0,0,0,.05),inset 0 1px 0 hsla(0,0%,100%,.2),0 0 0 1px hsla(0,0%,100%,.05)}.dark footer{background:rgba(0,0,0,.3);backdrop-filter:blur(30px) saturate(160%) brightness(110%);-webkit-backdrop-filter:blur(30px) saturate(160%) brightness(110%);border-top:1px solid hsla(0,0%,100%,.1);box-shadow:0 -8px 32px rgba(0,0,0,.3),0 -2px 8px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.1),0 0 0 1px hsla(0,0%,100%,.03)}.dropdown-arrow{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.mercedes-star-bg{position:relative}.mercedes-star-bg:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' fill='currentColor' opacity='.05'%3E%3Cpath d='M58.6 4.5C53 1.6 46.7 0 40 0S27 1.6 21.4 4.5C8.7 11.2 0 24.6 0 40s8.7 28.8 21.5 35.5C27 78.3 33.3 80 40 80s12.9-1.7 18.5-4.6C71.3 68.8 80 55.4 80 40S71.3 11.2 58.6 4.5M4 40c0-13.1 7-24.5 17.5-30.9C26.6 6 32.5 4.2 39 4l-4.5 32.7-13 10.1L8.3 57.1C5.6 52 4 46.2 4 40m54.6 30.8C53.1 74.1 46.8 76 40 76s-13.2-1.9-18.6-5.2c-4.9-2.9-8.9-6.9-11.9-11.7l11.9-4.9L40 46.6l18.6 7.5 12 4.9c-3 4.9-7.2 8.9-12 11.8m0-24-12.9-10L41.1 4c6.3.2 12.3 2 17.4 5.1C69 15.4 76 26.9 76 40c0 6.2-1.5 12-4.3 17.1z'/%3E%3C/svg%3E");background-position:50%;background-repeat:repeat;background-size:40px 40px;z-index:-1;opacity:.05}.dark .mercedes-star-bg:after{opacity:.02;filter:invert(1) brightness(.4)}.glass-effect{backdrop-filter:blur(20px) saturate(180%) brightness(110%);-webkit-backdrop-filter:blur(20px) saturate(180%) brightness(110%);background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 8px 32px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.3)}.dark .glass-effect{background:rgba(0,0,0,.3);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 8px 32px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.15)}.glass-hover{transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-hover:hover{transform:translateY(-2px);backdrop-filter:blur(25px) saturate(200%) brightness(120%);-webkit-backdrop-filter:blur(25px) saturate(200%) brightness(120%);box-shadow:0 20px 40px rgba(0,0,0,.15),0 8px 16px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.4)}.dark .glass-hover:hover{box-shadow:0 20px 40px rgba(0,0,0,.4),0 8px 16px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.2)}.printer-card-new{position:relative;overflow:hidden;border-radius:12px;border-width:1px;border-color:rgba(229,231,235,.7);background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from:hsla(0,0%,100%,.9) var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:hsla(0,0%,100%,.7) var(--tw-gradient-to-position);padding:1.25rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(40px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.printer-card-new:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.printer-card-new:is(.dark *){border-color:rgba(51,65,85,.3);--tw-gradient-from:rgba(30,41,59,.9) var(--tw-gradient-from-position);--tw-gradient-to:rgba(30,41,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(15,23,42,.7) var(--tw-gradient-to-position)}.printer-card-new{box-shadow:0 20px 40px rgba(0,0,0,.08),0 10px 20px rgba(0,0,0,.06),0 0 0 1px hsla(0,0%,100%,.1);border-radius:var(--card-radius,1rem)}.dark .printer-card-new{box-shadow:0 20px 40px rgba(0,0,0,.4),0 10px 20px rgba(0,0,0,.3),0 0 0 1px hsla(0,0%,100%,.05)}.printer-card-new.online{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity,1));background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from:rgba(240,253,244,.9) var(--tw-gradient-from-position);--tw-gradient-to:rgba(240,253,244,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(236,253,245,.8) var(--tw-gradient-to-position)}.printer-card-new.online:is(.dark *){border-color:rgba(21,128,61,.5);--tw-gradient-from:rgba(20,83,45,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(20,83,45,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(6,78,59,.2) var(--tw-gradient-to-position)}.printer-card-new.online{box-shadow:0 20px 40px rgba(0,122,85,.08),0 10px 20px rgba(0,122,85,.06),0 0 0 1px rgba(209,250,229,.4)}.dark .printer-card-new.online{box-shadow:0 20px 40px rgba(0,0,0,.3),0 10px 20px rgba(0,0,0,.2),0 0 0 1px rgba(16,185,129,.2)}.status-badge-new{display:inline-flex;align-items:center}.status-badge-new>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.status-badge-new{border-radius:9999px;padding:.25rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);background:hsla(0,0%,100%,.9);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 5px rgba(0,0,0,.05)}.dark .status-badge-new{background:rgba(30,41,59,.7);box-shadow:0 2px 5px rgba(0,0,0,.2)}.status-badge-new.online{background-color:rgba(220,252,231,.9);--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.status-badge-new.online:is(.dark *){background-color:rgba(20,83,45,.6);--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.status-badge-new.offline{background-color:hsla(0,93%,94%,.9);--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.status-badge-new.offline:is(.dark *){background-color:rgba(127,29,29,.6);--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.filter-bar-new{border-radius:.5rem;border-width:1px;border-color:rgba(229,231,235,.6);background-color:hsla(0,0%,100%,.8);padding:.375rem;--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.filter-bar-new:is(.dark *){border-color:rgba(51,65,85,.3);background-color:rgba(30,41,59,.8)}.filter-bar-new{box-shadow:0 10px 25px rgba(0,0,0,.05),0 5px 10px rgba(0,0,0,.03),0 0 0 1px hsla(0,0%,100%,.2)}.dark .filter-bar-new{box-shadow:0 10px 25px rgba(0,0,0,.2),0 5px 10px rgba(0,0,0,.15),0 0 0 1px hsla(0,0%,100%,.05)}.filter-btn-new{border-radius:.375rem;padding:.5rem .875rem;font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.filter-btn-new.active{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter-btn-new.active:is(.dark *){--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.filter-btn-new.active{box-shadow:0 4px 10px rgba(0,0,0,.1)}.dark .filter-btn-new.active{box-shadow:0 4px 10px rgba(0,0,0,.3)}.action-btn-new{display:flex;align-items:center;justify-content:center;gap:.5rem;border-radius:.5rem;padding:.625rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.action-btn-new:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.action-btn-new{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.action-btn-new.primary{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.action-btn-new.primary:hover{--tw-bg-opacity:1;background-color:rgb(67 56 202/var(--tw-bg-opacity,1))}.action-btn-new.primary:is(.dark *){--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.action-btn-new.primary:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(99 102 241/var(--tw-bg-opacity,1))}.action-btn-new.primary{box-shadow:0 5px 15px rgba(79,70,229,.2)}.dark .action-btn-new.primary{box-shadow:0 5px 15px rgba(79,70,229,.3)}.action-btn-new.success{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.action-btn-new.success:hover{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.action-btn-new.success:is(.dark *){--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.action-btn-new.success:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.action-btn-new.success{box-shadow:0 5px 15px rgba(16,185,129,.2)}.dark .action-btn-new.success{box-shadow:0 5px 15px rgba(16,185,129,.3)}.action-btn-new.danger{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.action-btn-new.danger:hover{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.action-btn-new.danger:is(.dark *){--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.action-btn-new.danger:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.action-btn-new.danger{box-shadow:0 5px 15px rgba(239,68,68,.2)}.dark .action-btn-new.danger{box-shadow:0 5px 15px rgba(239,68,68,.3)}.printer-info-row{margin-bottom:.375rem;display:flex;align-items:center;gap:.5rem;font-size:.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.printer-info-row:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}@media (min-width:640px){.printer-info-row{font-size:.875rem;line-height:1.25rem}}.printer-info-icon{height:.875rem;width:.875rem;flex-shrink:0;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.printer-info-icon:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}@media (min-width:640px){.printer-info-icon{height:1rem;width:1rem}}.online-indicator{position:absolute;top:.625rem;right:.625rem;height:.75rem;width:.75rem;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:0 0 0 rgba(16,185,129,.6);animation:pulse-ring 2s cubic-bezier(.455,.03,.515,.955) infinite}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 rgba(16,185,129,.6)}70%{box-shadow:0 0 0 6px rgba(16,185,129,0)}to{box-shadow:0 0 0 0 rgba(16,185,129,0)}}.status-overview-new{display:flex;flex-wrap:wrap;gap:.75rem;border-radius:.5rem;border-width:1px;border-color:rgba(229,231,235,.6);background-color:hsla(0,0%,100%,.6);padding:.75rem;font-size:.75rem;line-height:1rem;--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.status-overview-new:is(.dark *){border-color:rgba(51,65,85,.3);background-color:rgba(30,41,59,.6)}@media (min-width:640px){.status-overview-new{font-size:.875rem;line-height:1.25rem}}.status-overview-new{box-shadow:0 10px 25px rgba(0,0,0,.04),0 5px 10px rgba(0,0,0,.02),0 0 0 1px hsla(0,0%,100%,.1)}.dark .status-overview-new{box-shadow:0 10px 25px rgba(0,0,0,.15),0 5px 10px rgba(0,0,0,.1),0 0 0 1px hsla(0,0%,100%,.03)}.status-dot{height:.625rem;width:.625rem;border-radius:9999px}.status-dot.online{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1));animation:pulse-dot 2s cubic-bezier(.455,.03,.515,.955) infinite}.status-dot.offline{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}@keyframes pulse-dot{0%{transform:scale(.95);opacity:1}50%{transform:scale(1.1);opacity:.8}to{transform:scale(.95);opacity:1}}.modal-new{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background-color:rgba(0,0,0,.4);padding:1rem;--tw-backdrop-blur:blur(4px)}.modal-content-new,.modal-new{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.modal-content-new{width:100%;max-width:28rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:16px;border-width:1px;border-color:rgba(229,231,235,.6);background-color:hsla(0,0%,100%,.9);padding:1.5rem;--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);--tw-backdrop-blur:blur(40px);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.modal-content-new:is(.dark *){border-color:rgba(51,65,85,.3);background-color:rgba(30,41,59,.9)}.modal-content-new{box-shadow:0 25px 50px rgba(0,0,0,.15),0 15px 30px rgba(0,0,0,.1),0 20px 25px -5px rgba(0,0,0,.5),0 10px 10px -5px rgba(0,0,0,.3)}.user-dropdown-item{display:flex;cursor:pointer;align-items:center;padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.user-dropdown-item:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.user-dropdown-item:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.user-dropdown-item:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.user-dropdown-item:first-child{border-top-left-radius:12px;border-top-right-radius:12px}.user-dropdown-item:last-child{border-bottom-right-radius:12px;border-bottom-left-radius:12px}.user-dropdown-item:hover{background:rgba(248,250,252,.8);transform:translateX(2px)}.dark .user-dropdown-item:hover{background:rgba(30,41,59,.8)}.user-dropdown-icon{margin-right:.75rem;height:1rem;width:1rem;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.user-dropdown-icon:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.user-dropdown-item:hover .user-dropdown-icon{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.user-dropdown-item:hover .user-dropdown-icon:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.user-dropdown-divider{margin-top:.25rem;margin-bottom:.25rem;border-top-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.user-dropdown-divider:is(.dark *){--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.user-info-section{border-bottom-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));padding:.75rem 1rem}.user-info-section:is(.dark *){--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.user-info-section{background:rgba(248,250,252,.5)}.dark .user-info-section{background:rgba(30,41,59,.5)}.user-info-name{font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.user-info-name:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.user-info-role{margin-top:.25rem;font-size:.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.user-info-role:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:left-\[2px\]:after{content:var(--tw-content);left:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:h-5:after{content:var(--tw-content);height:1.25rem}.after\:w-5:after{content:var(--tw-content);width:1.25rem}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:border:after{content:var(--tw-content);border-width:1px}.after\:border-gray-300:after{content:var(--tw-content);--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.after\:bg-white:after{content:var(--tw-content);--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.after\:transition-all:after{content:var(--tw-content);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}.hover\:-translate-y-0\.5:hover{--tw-translate-y:-0.125rem}.hover\:-translate-y-0\.5:hover,.hover\:-translate-y-1:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-1:hover{--tw-translate-y:-0.25rem}.hover\:-translate-y-2:hover{--tw-translate-y:-0.5rem}.hover\:-translate-y-2:hover,.hover\:scale-105:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1}.hover\:scale-110:hover,.hover\:transform:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-blue-600:hover{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.hover\:border-emerald-600:hover{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity,1))}.hover\:border-gray-300:hover{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.hover\:border-mercedes-blue:hover{--tw-border-opacity:1;border-color:rgb(0 115 206/var(--tw-border-opacity,1))}.hover\:bg-amber-100:hover{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.hover\:bg-black\/5:hover{background-color:rgba(0,0,0,.05)}.hover\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.hover\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-emerald-700:hover{--tw-bg-opacity:1;background-color:rgb(4 120 87/var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.hover\:bg-gray-400:hover{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-gray-600:hover{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.hover\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.hover\:bg-gray-800:hover{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.hover\:bg-green-100:hover{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.hover\:bg-green-600:hover{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.hover\:bg-green-700:hover{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.hover\:bg-indigo-600:hover{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.hover\:bg-mercedes-blue:hover{--tw-bg-opacity:1;background-color:rgb(0 115 206/var(--tw-bg-opacity,1))}.hover\:bg-mercedes-silver:hover{--tw-bg-opacity:1;background-color:rgb(170 169 173/var(--tw-bg-opacity,1))}.hover\:bg-orange-600:hover{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity,1))}.hover\:bg-orange-700:hover{--tw-bg-opacity:1;background-color:rgb(194 65 12/var(--tw-bg-opacity,1))}.hover\:bg-purple-100:hover{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.hover\:bg-purple-600:hover{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.hover\:bg-purple-700:hover{--tw-bg-opacity:1;background-color:rgb(126 34 206/var(--tw-bg-opacity,1))}.hover\:bg-red-100:hover{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.hover\:bg-red-500\/20:hover{background-color:rgba(239,68,68,.2)}.hover\:bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.hover\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.hover\:bg-slate-100\/50:hover{background-color:rgba(241,245,249,.5)}.hover\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.hover\:bg-slate-300:hover{--tw-bg-opacity:1;background-color:rgb(203 213 225/var(--tw-bg-opacity,1))}.hover\:bg-slate-400:hover{--tw-bg-opacity:1;background-color:rgb(148 163 184/var(--tw-bg-opacity,1))}.hover\:bg-slate-50:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.hover\:bg-slate-600:hover{--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity,1))}.hover\:bg-slate-700:hover{--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.hover\:bg-teal-600:hover{--tw-bg-opacity:1;background-color:rgb(13 148 136/var(--tw-bg-opacity,1))}.hover\:bg-white:hover{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.hover\:bg-white\/10:hover{background-color:hsla(0,0%,100%,.1)}.hover\:bg-white\/20:hover{background-color:hsla(0,0%,100%,.2)}.hover\:bg-white\/25:hover{background-color:hsla(0,0%,100%,.25)}.hover\:bg-white\/50:hover{background-color:hsla(0,0%,100%,.5)}.hover\:bg-yellow-100:hover{--tw-bg-opacity:1;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.hover\:bg-yellow-600:hover{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.hover\:bg-yellow-700:hover{--tw-bg-opacity:1;background-color:rgb(161 98 7/var(--tw-bg-opacity,1))}.hover\:from-blue-600:hover{--tw-gradient-from:#2563eb var(--tw-gradient-from-position);--tw-gradient-to:rgba(37,99,235,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-green-600:hover{--tw-gradient-from:#16a34a var(--tw-gradient-from-position);--tw-gradient-to:rgba(22,163,74,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-orange-600:hover{--tw-gradient-from:#ea580c var(--tw-gradient-from-position);--tw-gradient-to:rgba(234,88,12,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-slate-600:hover{--tw-gradient-from:#475569 var(--tw-gradient-from-position);--tw-gradient-to:rgba(71,85,105,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:to-blue-700:hover{--tw-gradient-to:#1d4ed8 var(--tw-gradient-to-position)}.hover\:to-green-700:hover{--tw-gradient-to:#15803d var(--tw-gradient-to-position)}.hover\:to-red-600:hover{--tw-gradient-to:#dc2626 var(--tw-gradient-to-position)}.hover\:to-slate-700:hover{--tw-gradient-to:#334155 var(--tw-gradient-to-position)}.hover\:text-blue-400:hover{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.hover\:text-blue-500:hover{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.hover\:text-blue-600:hover{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.hover\:text-blue-700:hover{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.hover\:text-blue-800:hover{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.hover\:text-blue-900:hover{--tw-text-opacity:1;color:rgb(30 58 138/var(--tw-text-opacity,1))}.hover\:text-emerald-600:hover{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.hover\:text-gray-200:hover{--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.hover\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.hover\:text-gray-800:hover{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.hover\:text-gray-900:hover{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.hover\:text-green-900:hover{--tw-text-opacity:1;color:rgb(20 83 45/var(--tw-text-opacity,1))}.hover\:text-mercedes-blue:hover{--tw-text-opacity:1;color:rgb(0 115 206/var(--tw-text-opacity,1))}.hover\:text-orange-900:hover{--tw-text-opacity:1;color:rgb(124 45 18/var(--tw-text-opacity,1))}.hover\:text-purple-900:hover{--tw-text-opacity:1;color:rgb(88 28 135/var(--tw-text-opacity,1))}.hover\:text-red-500:hover{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.hover\:text-red-700:hover{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.hover\:text-red-900:hover{--tw-text-opacity:1;color:rgb(127 29 29/var(--tw-text-opacity,1))}.hover\:text-slate-600:hover{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.hover\:text-slate-700:hover{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.hover\:text-slate-800:hover{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.hover\:text-slate-900:hover{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-70:hover{opacity:.7}.hover\:shadow-2xl:hover{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.hover\:shadow-2xl:hover,.hover\:shadow-lg:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.hover\:shadow-md:hover,.hover\:shadow-xl:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.focus\:z-10:focus{z-index:10}.focus\:border-blue-500:focus{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.focus\:border-blue-600:focus{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.focus\:border-mercedes-blue:focus{--tw-border-opacity:1;border-color:rgb(0 115 206/var(--tw-border-opacity,1))}.focus\:border-red-500:focus{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.focus\:ring-blue-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(37 99 235/var(--tw-ring-opacity,1))}.focus\:ring-green-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(74 222 128/var(--tw-ring-opacity,1))}.focus\:ring-green-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.focus\:ring-mercedes-blue:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(0 115 206/var(--tw-ring-opacity,1))}.focus\:ring-red-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(248 113 113/var(--tw-ring-opacity,1))}.focus\:ring-red-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68/var(--tw-ring-opacity,1))}.focus\:ring-yellow-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(234 179 8/var(--tw-ring-opacity,1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:bg-gray-200:active{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-gray-100:disabled{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.disabled\:opacity-50:disabled{opacity:.5}.group:focus-within .group-focus-within\:text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:-translate-x-1{--tw-translate-x:-0.25rem}.group:hover .group-hover\:-translate-x-1,.group:hover .group-hover\:translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-full{--tw-translate-x:100%}.group:hover .group-hover\:scale-110{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:text-mercedes-blue{--tw-text-opacity:1;color:rgb(0 115 206/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.group:hover .group-hover\:opacity-100{opacity:1}.group:disabled .group-disabled\:opacity-0{opacity:0}.group:disabled .group-disabled\:opacity-100{opacity:1}.peer:checked~.peer-checked\:border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.peer:checked~.peer-checked\:border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.peer:checked~.peer-checked\:border-slate-500{--tw-border-opacity:1;border-color:rgb(100 116 139/var(--tw-border-opacity,1))}.peer:checked~.peer-checked\:bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.peer:checked~.peer-checked\:bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.peer:checked~.peer-checked\:bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.peer:checked~.peer-checked\:bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.peer:checked~.peer-checked\:after\:translate-x-full:after{content:var(--tw-content);--tw-translate-x:100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\:after\:border-white:after{content:var(--tw-content);--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.peer:focus~.peer-focus\:outline-none{outline:2px solid transparent;outline-offset:2px}.peer:focus~.peer-focus\:ring-4{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.peer:focus~.peer-focus\:ring-blue-300{--tw-ring-opacity:1;--tw-ring-color:rgb(147 197 253/var(--tw-ring-opacity,1))}.dark\:rotate-0:is(.dark *){--tw-rotate:0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:rotate-90:is(.dark *){--tw-rotate:90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:scale-100:is(.dark *){--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:scale-75:is(.dark *){--tw-scale-x:.75;--tw-scale-y:.75;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:divide-gray-700:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(55 65 81/var(--tw-divide-opacity,1))}.dark\:divide-slate-700:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(51 65 85/var(--tw-divide-opacity,1))}.dark\:border-amber-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(146 64 14/var(--tw-border-opacity,1))}.dark\:border-blue-400:is(.dark *){--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.dark\:border-blue-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.dark\:border-blue-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(29 78 216/var(--tw-border-opacity,1))}.dark\:border-blue-700\/30:is(.dark *){border-color:rgba(29,78,216,.3)}.dark\:border-blue-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity,1))}.dark\:border-blue-800\/50:is(.dark *){border-color:rgba(30,64,175,.5)}.dark\:border-emerald-700\/30:is(.dark *){border-color:rgba(4,120,87,.3)}.dark\:border-gray-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity,1))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity,1))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity,1))}.dark\:border-green-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity,1))}.dark\:border-green-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(22 101 52/var(--tw-border-opacity,1))}.dark\:border-green-800\/50:is(.dark *){border-color:rgba(22,101,52,.5)}.dark\:border-indigo-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(55 48 163/var(--tw-border-opacity,1))}.dark\:border-indigo-800\/50:is(.dark *){border-color:rgba(55,48,163,.5)}.dark\:border-orange-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(194 65 12/var(--tw-border-opacity,1))}.dark\:border-orange-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(154 52 18/var(--tw-border-opacity,1))}.dark\:border-orange-800\/50:is(.dark *){border-color:rgba(154,52,18,.5)}.dark\:border-purple-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(107 33 168/var(--tw-border-opacity,1))}.dark\:border-purple-800\/50:is(.dark *){border-color:rgba(107,33,168,.5)}.dark\:border-red-400:is(.dark *){--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.dark\:border-red-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(185 28 28/var(--tw-border-opacity,1))}.dark\:border-red-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(153 27 27/var(--tw-border-opacity,1))}.dark\:border-red-800\/50:is(.dark *){border-color:rgba(153,27,27,.5)}.dark\:border-slate-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity,1))}.dark\:border-slate-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.dark\:border-slate-700\/30:is(.dark *){border-color:rgba(51,65,85,.3)}.dark\:border-slate-700\/50:is(.dark *){border-color:rgba(51,65,85,.5)}.dark\:border-white\/20:is(.dark *){border-color:hsla(0,0%,100%,.2)}.dark\:border-yellow-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(202 138 4/var(--tw-border-opacity,1))}.dark\:border-yellow-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(161 98 7/var(--tw-border-opacity,1))}.dark\:border-yellow-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(133 77 14/var(--tw-border-opacity,1))}.dark\:border-t-slate-700:is(.dark *){--tw-border-opacity:1;border-top-color:rgb(51 65 85/var(--tw-border-opacity,1))}.dark\:bg-amber-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(217 119 6/var(--tw-bg-opacity,1))}.dark\:bg-amber-900\/20:is(.dark *){background-color:rgba(120,53,15,.2)}.dark\:bg-black:is(.dark *){--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.dark\:bg-black\/50:is(.dark *){background-color:rgba(0,0,0,.5)}.dark\:bg-black\/80:is(.dark *){background-color:rgba(0,0,0,.8)}.dark\:bg-blue-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(147 197 253/var(--tw-bg-opacity,1))}.dark\:bg-blue-500:is(.dark *){--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.dark\:bg-blue-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.dark\:bg-blue-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 64 175/var(--tw-bg-opacity,1))}.dark\:bg-blue-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 58 138/var(--tw-bg-opacity,1))}.dark\:bg-blue-900\/10:is(.dark *){background-color:rgba(30,58,138,.1)}.dark\:bg-blue-900\/20:is(.dark *){background-color:rgba(30,58,138,.2)}.dark\:bg-blue-900\/30:is(.dark *){background-color:rgba(30,58,138,.3)}.dark\:bg-blue-900\/50:is(.dark *){background-color:rgba(30,58,138,.5)}.dark\:bg-cyan-900\/50:is(.dark *){background-color:rgba(22,78,99,.5)}.dark\:bg-emerald-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(6 78 59/var(--tw-bg-opacity,1))}.dark\:bg-emerald-900\/20:is(.dark *){background-color:rgba(6,78,59,.2)}.dark\:bg-emerald-900\/50:is(.dark *){background-color:rgba(6,78,59,.5)}.dark\:bg-gray-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.dark\:bg-gray-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.dark\:bg-gray-900\/20:is(.dark *){background-color:rgba(17,24,39,.2)}.dark\:bg-gray-900\/30:is(.dark *){background-color:rgba(17,24,39,.3)}.dark\:bg-green-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(134 239 172/var(--tw-bg-opacity,1))}.dark\:bg-green-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.dark\:bg-green-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.dark\:bg-green-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(22 101 52/var(--tw-bg-opacity,1))}.dark\:bg-green-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(20 83 45/var(--tw-bg-opacity,1))}.dark\:bg-green-900\/10:is(.dark *){background-color:rgba(20,83,45,.1)}.dark\:bg-green-900\/20:is(.dark *){background-color:rgba(20,83,45,.2)}.dark\:bg-green-900\/30:is(.dark *){background-color:rgba(20,83,45,.3)}.dark\:bg-green-900\/50:is(.dark *){background-color:rgba(20,83,45,.5)}.dark\:bg-indigo-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(67 56 202/var(--tw-bg-opacity,1))}.dark\:bg-indigo-900\/10:is(.dark *){background-color:rgba(49,46,129,.1)}.dark\:bg-indigo-900\/20:is(.dark *){background-color:rgba(49,46,129,.2)}.dark\:bg-indigo-900\/50:is(.dark *){background-color:rgba(49,46,129,.5)}.dark\:bg-orange-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(253 186 116/var(--tw-bg-opacity,1))}.dark\:bg-orange-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(124 45 18/var(--tw-bg-opacity,1))}.dark\:bg-orange-900\/10:is(.dark *){background-color:rgba(124,45,18,.1)}.dark\:bg-orange-900\/20:is(.dark *){background-color:rgba(124,45,18,.2)}.dark\:bg-orange-900\/30:is(.dark *){background-color:rgba(124,45,18,.3)}.dark\:bg-orange-900\/50:is(.dark *){background-color:rgba(124,45,18,.5)}.dark\:bg-purple-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.dark\:bg-purple-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(88 28 135/var(--tw-bg-opacity,1))}.dark\:bg-purple-900\/10:is(.dark *){background-color:rgba(88,28,135,.1)}.dark\:bg-purple-900\/20:is(.dark *){background-color:rgba(88,28,135,.2)}.dark\:bg-purple-900\/30:is(.dark *){background-color:rgba(88,28,135,.3)}.dark\:bg-purple-900\/50:is(.dark *){background-color:rgba(88,28,135,.5)}.dark\:bg-red-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(252 165 165/var(--tw-bg-opacity,1))}.dark\:bg-red-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.dark\:bg-red-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.dark\:bg-red-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(153 27 27/var(--tw-bg-opacity,1))}.dark\:bg-red-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(127 29 29/var(--tw-bg-opacity,1))}.dark\:bg-red-900\/10:is(.dark *){background-color:rgba(127,29,29,.1)}.dark\:bg-red-900\/20:is(.dark *){background-color:rgba(127,29,29,.2)}.dark\:bg-red-900\/30:is(.dark *){background-color:rgba(127,29,29,.3)}.dark\:bg-red-900\/40:is(.dark *){background-color:rgba(127,29,29,.4)}.dark\:bg-red-900\/50:is(.dark *){background-color:rgba(127,29,29,.5)}.dark\:bg-slate-500:is(.dark *){--tw-bg-opacity:1;background-color:rgb(100 116 139/var(--tw-bg-opacity,1))}.dark\:bg-slate-600:is(.dark *){--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity,1))}.dark\:bg-slate-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.dark\:bg-slate-700\/30:is(.dark *){background-color:rgba(51,65,85,.3)}.dark\:bg-slate-700\/40:is(.dark *){background-color:rgba(51,65,85,.4)}.dark\:bg-slate-700\/50:is(.dark *){background-color:rgba(51,65,85,.5)}.dark\:bg-slate-700\/60:is(.dark *){background-color:rgba(51,65,85,.6)}.dark\:bg-slate-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\:bg-slate-800\/30:is(.dark *){background-color:rgba(30,41,59,.3)}.dark\:bg-slate-800\/40:is(.dark *){background-color:rgba(30,41,59,.4)}.dark\:bg-slate-800\/50:is(.dark *){background-color:rgba(30,41,59,.5)}.dark\:bg-slate-800\/60:is(.dark *){background-color:rgba(30,41,59,.6)}.dark\:bg-slate-800\/80:is(.dark *){background-color:rgba(30,41,59,.8)}.dark\:bg-slate-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.dark\:bg-slate-900\/50:is(.dark *){background-color:rgba(15,23,42,.5)}.dark\:bg-slate-900\/60:is(.dark *){background-color:rgba(15,23,42,.6)}.dark\:bg-slate-900\/80:is(.dark *){background-color:rgba(15,23,42,.8)}.dark\:bg-slate-900\/90:is(.dark *){background-color:rgba(15,23,42,.9)}.dark\:bg-teal-900\/50:is(.dark *){background-color:rgba(19,78,74,.5)}.dark\:bg-white\/10:is(.dark *){background-color:hsla(0,0%,100%,.1)}.dark\:bg-yellow-300:is(.dark *){--tw-bg-opacity:1;background-color:rgb(253 224 71/var(--tw-bg-opacity,1))}.dark\:bg-yellow-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(113 63 18/var(--tw-bg-opacity,1))}.dark\:bg-yellow-900\/20:is(.dark *){background-color:rgba(113,63,18,.2)}.dark\:bg-yellow-900\/30:is(.dark *){background-color:rgba(113,63,18,.3)}.dark\:bg-yellow-900\/50:is(.dark *){background-color:rgba(113,63,18,.5)}.dark\:bg-opacity-95:is(.dark *){--tw-bg-opacity:0.95}.dark\:from-blue-400:is(.dark *){--tw-gradient-from:#60a5fa var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-blue-400\/20:is(.dark *){--tw-gradient-from:rgba(96,165,250,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-blue-400\/5:is(.dark *){--tw-gradient-from:rgba(96,165,250,.05) var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-blue-900\/10:is(.dark *){--tw-gradient-from:rgba(30,58,138,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-blue-900\/20:is(.dark *){--tw-gradient-from:rgba(30,58,138,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-blue-900\/30:is(.dark *){--tw-gradient-from:rgba(30,58,138,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-emerald-900\/20:is(.dark *){--tw-gradient-from:rgba(6,78,59,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(6,78,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-gray-900:is(.dark *){--tw-gradient-from:#111827 var(--tw-gradient-from-position);--tw-gradient-to:rgba(17,24,39,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-green-400:is(.dark *){--tw-gradient-from:#4ade80 var(--tw-gradient-from-position);--tw-gradient-to:rgba(74,222,128,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-green-400\/20:is(.dark *){--tw-gradient-from:rgba(74,222,128,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(74,222,128,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-green-900\/10:is(.dark *){--tw-gradient-from:rgba(20,83,45,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(20,83,45,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-green-900\/20:is(.dark *){--tw-gradient-from:rgba(20,83,45,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(20,83,45,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-green-900\/30:is(.dark *){--tw-gradient-from:rgba(20,83,45,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(20,83,45,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-orange-400:is(.dark *){--tw-gradient-from:#fb923c var(--tw-gradient-from-position);--tw-gradient-to:rgba(251,146,60,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-orange-400\/20:is(.dark *){--tw-gradient-from:rgba(251,146,60,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(251,146,60,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-orange-900\/10:is(.dark *){--tw-gradient-from:rgba(124,45,18,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(124,45,18,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-purple-900\/20:is(.dark *){--tw-gradient-from:rgba(88,28,135,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(88,28,135,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-purple-900\/30:is(.dark *){--tw-gradient-from:rgba(88,28,135,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(88,28,135,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-red-400:is(.dark *){--tw-gradient-from:#f87171 var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,91%,71%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-red-400\/20:is(.dark *){--tw-gradient-from:hsla(0,91%,71%,.2) var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,91%,71%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-slate-800:is(.dark *){--tw-gradient-from:#1e293b var(--tw-gradient-from-position);--tw-gradient-to:rgba(30,41,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-slate-900:is(.dark *){--tw-gradient-from:#0f172a var(--tw-gradient-from-position);--tw-gradient-to:rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-slate-950:is(.dark *){--tw-gradient-from:#020617 var(--tw-gradient-from-position);--tw-gradient-to:rgba(2,6,23,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:from-white:is(.dark *){--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:via-blue-200:is(.dark *){--tw-gradient-to:rgba(191,219,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#bfdbfe var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-blue-900:is(.dark *){--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#1e3a8a var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-blue-900\/20:is(.dark *){--tw-gradient-to:rgba(30,58,138,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(30,58,138,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-blue-950:is(.dark *){--tw-gradient-to:rgba(23,37,84,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#172554 var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-emerald-900\/20:is(.dark *){--tw-gradient-to:rgba(6,78,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(6,78,59,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-red-900\/20:is(.dark *){--tw-gradient-to:rgba(127,29,29,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(127,29,29,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:via-slate-800:is(.dark *){--tw-gradient-to:rgba(30,41,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#1e293b var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:to-blue-500:is(.dark *){--tw-gradient-to:#3b82f6 var(--tw-gradient-to-position)}.dark\:to-blue-800\/30:is(.dark *){--tw-gradient-to:rgba(30,64,175,.3) var(--tw-gradient-to-position)}.dark\:to-emerald-400\/20:is(.dark *){--tw-gradient-to:rgba(52,211,153,.2) var(--tw-gradient-to-position)}.dark\:to-emerald-900\/10:is(.dark *){--tw-gradient-to:rgba(6,78,59,.1) var(--tw-gradient-to-position)}.dark\:to-emerald-900\/20:is(.dark *){--tw-gradient-to:rgba(6,78,59,.2) var(--tw-gradient-to-position)}.dark\:to-gray-200:is(.dark *){--tw-gradient-to:#e5e7eb var(--tw-gradient-to-position)}.dark\:to-gray-800:is(.dark *){--tw-gradient-to:#1f2937 var(--tw-gradient-to-position)}.dark\:to-green-500:is(.dark *){--tw-gradient-to:#22c55e var(--tw-gradient-to-position)}.dark\:to-green-800\/30:is(.dark *){--tw-gradient-to:rgba(22,101,52,.3) var(--tw-gradient-to-position)}.dark\:to-green-900\/20:is(.dark *){--tw-gradient-to:rgba(20,83,45,.2) var(--tw-gradient-to-position)}.dark\:to-indigo-400\/20:is(.dark *){--tw-gradient-to:rgba(129,140,248,.2) var(--tw-gradient-to-position)}.dark\:to-indigo-400\/5:is(.dark *){--tw-gradient-to:rgba(129,140,248,.05) var(--tw-gradient-to-position)}.dark\:to-indigo-900:is(.dark *){--tw-gradient-to:#312e81 var(--tw-gradient-to-position)}.dark\:to-indigo-900\/10:is(.dark *){--tw-gradient-to:rgba(49,46,129,.1) var(--tw-gradient-to-position)}.dark\:to-indigo-900\/20:is(.dark *){--tw-gradient-to:rgba(49,46,129,.2) var(--tw-gradient-to-position)}.dark\:to-indigo-950:is(.dark *){--tw-gradient-to:#1e1b4b var(--tw-gradient-to-position)}.dark\:to-orange-500:is(.dark *){--tw-gradient-to:#f97316 var(--tw-gradient-to-position)}.dark\:to-orange-900\/20:is(.dark *){--tw-gradient-to:rgba(124,45,18,.2) var(--tw-gradient-to-position)}.dark\:to-pink-400\/20:is(.dark *){--tw-gradient-to:rgba(244,114,182,.2) var(--tw-gradient-to-position)}.dark\:to-pink-900\/20:is(.dark *){--tw-gradient-to:rgba(131,24,67,.2) var(--tw-gradient-to-position)}.dark\:to-purple-800\/30:is(.dark *){--tw-gradient-to:rgba(107,33,168,.3) var(--tw-gradient-to-position)}.dark\:to-red-400\/20:is(.dark *){--tw-gradient-to:hsla(0,91%,71%,.2) var(--tw-gradient-to-position)}.dark\:to-red-500:is(.dark *){--tw-gradient-to:#ef4444 var(--tw-gradient-to-position)}.dark\:to-red-900\/10:is(.dark *){--tw-gradient-to:rgba(127,29,29,.1) var(--tw-gradient-to-position)}.dark\:to-slate-200:is(.dark *){--tw-gradient-to:#e2e8f0 var(--tw-gradient-to-position)}.dark\:to-slate-300:is(.dark *){--tw-gradient-to:#cbd5e1 var(--tw-gradient-to-position)}.dark\:to-slate-700:is(.dark *){--tw-gradient-to:#334155 var(--tw-gradient-to-position)}.dark\:to-slate-800:is(.dark *){--tw-gradient-to:#1e293b var(--tw-gradient-to-position)}.dark\:to-slate-900:is(.dark *){--tw-gradient-to:#0f172a var(--tw-gradient-to-position)}.dark\:text-amber-200:is(.dark *){--tw-text-opacity:1;color:rgb(253 230 138/var(--tw-text-opacity,1))}.dark\:text-amber-300:is(.dark *){--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.dark\:text-amber-400:is(.dark *){--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.dark\:text-blue-100:is(.dark *){--tw-text-opacity:1;color:rgb(219 234 254/var(--tw-text-opacity,1))}.dark\:text-blue-200:is(.dark *){--tw-text-opacity:1;color:rgb(191 219 254/var(--tw-text-opacity,1))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.dark\:text-blue-500:is(.dark *){--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.dark\:text-cyan-400:is(.dark *){--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity,1))}.dark\:text-emerald-300:is(.dark *){--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.dark\:text-emerald-400:is(.dark *){--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.dark\:text-gray-100:is(.dark *){--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity,1))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.dark\:text-gray-600:is(.dark *){--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.dark\:text-green-100:is(.dark *){--tw-text-opacity:1;color:rgb(220 252 231/var(--tw-text-opacity,1))}.dark\:text-green-200:is(.dark *){--tw-text-opacity:1;color:rgb(187 247 208/var(--tw-text-opacity,1))}.dark\:text-green-300:is(.dark *){--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.dark\:text-green-400:is(.dark *){--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.dark\:text-indigo-200:is(.dark *){--tw-text-opacity:1;color:rgb(199 210 254/var(--tw-text-opacity,1))}.dark\:text-indigo-300:is(.dark *){--tw-text-opacity:1;color:rgb(165 180 252/var(--tw-text-opacity,1))}.dark\:text-indigo-400:is(.dark *){--tw-text-opacity:1;color:rgb(129 140 248/var(--tw-text-opacity,1))}.dark\:text-orange-200:is(.dark *){--tw-text-opacity:1;color:rgb(254 215 170/var(--tw-text-opacity,1))}.dark\:text-orange-300:is(.dark *){--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity,1))}.dark\:text-orange-400:is(.dark *){--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity,1))}.dark\:text-purple-200:is(.dark *){--tw-text-opacity:1;color:rgb(233 213 255/var(--tw-text-opacity,1))}.dark\:text-purple-300:is(.dark *){--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.dark\:text-purple-400:is(.dark *){--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.dark\:text-red-100:is(.dark *){--tw-text-opacity:1;color:rgb(254 226 226/var(--tw-text-opacity,1))}.dark\:text-red-200:is(.dark *){--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity,1))}.dark\:text-red-300:is(.dark *){--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.dark\:text-red-400:is(.dark *){--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.dark\:text-red-600:is(.dark *){--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.dark\:text-slate-100:is(.dark *){--tw-text-opacity:1;color:rgb(241 245 249/var(--tw-text-opacity,1))}.dark\:text-slate-200:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.dark\:text-slate-300:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.dark\:text-slate-400:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.dark\:text-slate-500:is(.dark *){--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.dark\:text-slate-600:is(.dark *){--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.dark\:text-teal-400:is(.dark *){--tw-text-opacity:1;color:rgb(45 212 191/var(--tw-text-opacity,1))}.dark\:text-white:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dark\:text-yellow-200:is(.dark *){--tw-text-opacity:1;color:rgb(254 240 138/var(--tw-text-opacity,1))}.dark\:text-yellow-300:is(.dark *){--tw-text-opacity:1;color:rgb(253 224 71/var(--tw-text-opacity,1))}.dark\:text-yellow-400:is(.dark *){--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity,1))}.dark\:placeholder-slate-400:is(.dark *)::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity,1))}.dark\:placeholder-slate-400:is(.dark *)::placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity,1))}.dark\:opacity-0:is(.dark *){opacity:0}.dark\:opacity-100:is(.dark *){opacity:1}.dark\:opacity-5:is(.dark *){opacity:.05}.dark\:shadow-2xl:is(.dark *){--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.dark\:hover\:border-blue-400:hover:is(.dark *){--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.dark\:hover\:border-emerald-400:hover:is(.dark *){--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.dark\:hover\:bg-amber-900\/30:hover:is(.dark *){background-color:rgba(120,53,15,.3)}.dark\:hover\:bg-black\/10:hover:is(.dark *){background-color:rgba(0,0,0,.1)}.dark\:hover\:bg-blue-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.dark\:hover\:bg-blue-600:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.dark\:hover\:bg-blue-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.dark\:hover\:bg-blue-900\/20:hover:is(.dark *){background-color:rgba(30,58,138,.2)}.dark\:hover\:bg-blue-900\/30:hover:is(.dark *){background-color:rgba(30,58,138,.3)}.dark\:hover\:bg-gray-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.dark\:hover\:bg-gray-600:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.dark\:hover\:bg-gray-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.dark\:hover\:bg-green-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.dark\:hover\:bg-green-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.dark\:hover\:bg-green-900\/30:hover:is(.dark *){background-color:rgba(20,83,45,.3)}.dark\:hover\:bg-purple-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(126 34 206/var(--tw-bg-opacity,1))}.dark\:hover\:bg-purple-900\/30:hover:is(.dark *){background-color:rgba(88,28,135,.3)}.dark\:hover\:bg-red-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.dark\:hover\:bg-red-600:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.dark\:hover\:bg-red-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.dark\:hover\:bg-red-900\/30:hover:is(.dark *){background-color:rgba(127,29,29,.3)}.dark\:hover\:bg-slate-500:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(100 116 139/var(--tw-bg-opacity,1))}.dark\:hover\:bg-slate-600:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(71 85 105/var(--tw-bg-opacity,1))}.dark\:hover\:bg-slate-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.dark\:hover\:bg-slate-700\/50:hover:is(.dark *){background-color:rgba(51,65,85,.5)}.dark\:hover\:bg-slate-800:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.dark\:hover\:bg-slate-800\/50:hover:is(.dark *){background-color:rgba(30,41,59,.5)}.dark\:hover\:bg-white\/15:hover:is(.dark *){background-color:hsla(0,0%,100%,.15)}.dark\:hover\:bg-white\/5:hover:is(.dark *){background-color:hsla(0,0%,100%,.05)}.dark\:hover\:bg-yellow-900\/30:hover:is(.dark *){background-color:rgba(113,63,18,.3)}.dark\:hover\:text-blue-200:hover:is(.dark *){--tw-text-opacity:1;color:rgb(191 219 254/var(--tw-text-opacity,1))}.dark\:hover\:text-blue-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.dark\:hover\:text-blue-400:hover:is(.dark *){--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.dark\:hover\:text-emerald-400:hover:is(.dark *){--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.dark\:hover\:text-gray-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.dark\:hover\:text-green-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.dark\:hover\:text-orange-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity,1))}.dark\:hover\:text-purple-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.dark\:hover\:text-red-200:hover:is(.dark *){--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity,1))}.dark\:hover\:text-red-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.dark\:hover\:text-slate-200:hover:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.dark\:hover\:text-slate-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.dark\:hover\:shadow-slate-900\/50:hover:is(.dark *){--tw-shadow-color:rgba(15,23,42,.5);--tw-shadow:var(--tw-shadow-colored)}.dark\:focus\:ring-blue-400:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(96 165 250/var(--tw-ring-opacity,1))}.dark\:focus\:ring-blue-600:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(37 99 235/var(--tw-ring-opacity,1))}.dark\:disabled\:bg-slate-800:disabled:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.group:hover .dark\:group-hover\:text-slate-300:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.group:hover .dark\:group-hover\:text-white:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.peer:checked~.dark\:peer-checked\:bg-blue-900\/20:is(.dark *){background-color:rgba(30,58,138,.2)}.peer:checked~.dark\:peer-checked\:bg-green-900\/20:is(.dark *){background-color:rgba(20,83,45,.2)}.peer:checked~.dark\:peer-checked\:bg-slate-900\/20:is(.dark *){background-color:rgba(15,23,42,.2)}.peer:focus~.dark\:peer-focus\:ring-blue-800:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(30 64 175/var(--tw-ring-opacity,1))}@media (min-width:640px){.sm\:mx-0{margin-left:0;margin-right:0}.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:ml-3{margin-left:.75rem}.sm\:ml-4{margin-left:1rem}.sm\:mt-0{margin-top:0}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:h-10{height:2.5rem}.sm\:h-5{height:1.25rem}.sm\:w-10{width:2.5rem}.sm\:w-5{width:1.25rem}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-lg{max-width:32rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-row-reverse{flex-direction:row-reverse}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:justify-center{justify-content:center}.sm\:justify-between{justify-content:space-between}.sm\:space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px*var(--tw-space-y-reverse))}.sm\:p-0{padding:0}.sm\:p-6{padding:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:pb-4{padding-bottom:1rem}.sm\:text-left{text-align:left}.sm\:align-middle{vertical-align:middle}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width:768px){.md\:col-span-2{grid-column:span 2/span 2}.md\:ml-2{margin-left:.5rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.md\:p-12{padding:3rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-8xl{font-size:6rem;line-height:1}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:ml-0{margin-left:0}.lg\:mt-0{margin-top:0}.lg\:block{display:block}.lg\:inline{display:inline}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px*var(--tw-space-y-reverse))}.lg\:p-12{padding:3rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-right{text-align:right}.lg\:text-6xl{font-size:3.75rem;line-height:1}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}} \ No newline at end of file diff --git a/backend/static/js/admin-unified.js b/backend/static/js/admin-unified.js index 7447e0fbc..26513ac2f 100644 --- a/backend/static/js/admin-unified.js +++ b/backend/static/js/admin-unified.js @@ -258,6 +258,14 @@ class AdminDashboard { this.showPrinterSettings(printerId); } + // Drucker-Konfiguration Button + if (e.target.closest('.configure-printer-btn')) { + e.preventDefault(); + e.stopPropagation(); + const printerId = e.target.closest('button').dataset.printerId; + this.showPrinterConfiguration(printerId); + } + // Smart-Plug Ein/Aus Toggle für Drucker if (e.target.closest('.toggle-printer-power-btn')) { e.preventDefault(); @@ -1374,6 +1382,51 @@ class AdminDashboard { window.location.href = `/admin/printers/${printerId}/settings`; } + /** + * Drucker-Konfigurationsseite laden - Backend-Only-Architektur + * Implementiert die angeforderte function() für Drucker-Konfiguration + */ + showPrinterConfiguration(printerId) { + console.log(`🔧 Drucker-Konfiguration ${printerId} wird geöffnet (Backend-Only)`); + this.showNotification(`Konfiguration für Drucker ${printerId} wird geöffnet...`, 'info'); + + // Validierung der Drucker-ID + if (!printerId || isNaN(printerId)) { + this.showNotification('Ungültige Drucker-ID für Konfiguration', 'error'); + return; + } + + // Backend-Redirect zur erweiterten Konfigurationsseite + window.location.href = `/admin/printers/${printerId}/configure`; + } + + /** + * Alternative Event-Handler-Funktion für data-printer-id Attribute + * Kann direkt an HTML-Elemente gebunden werden + */ + static handlePrinterConfiguration(event) { + const element = event.target.closest('[data-printer-id]'); + if (!element) { + console.error('❌ Kein Element mit data-printer-id gefunden'); + return; + } + + const printerId = element.dataset.printerId; + if (!printerId) { + console.error('❌ Keine Drucker-ID im data-printer-id Attribut'); + return; + } + + // AdminDashboard-Instanz verwenden falls verfügbar + if (window.adminDashboard && typeof window.adminDashboard.showPrinterConfiguration === 'function') { + window.adminDashboard.showPrinterConfiguration(printerId); + } else { + // Fallback: Direkte Navigation + console.log(`🔧 Direkte Navigation zu Drucker-Konfiguration ${printerId}`); + window.location.href = `/admin/printers/${printerId}/configure`; + } + } + // Smart-Plug Ein/Aus Toggle für Drucker async togglePrinterPower(printerId, printerName, button) { console.log(`🔌 Smart-Plug Toggle für Drucker ${printerId} (${printerName})`); @@ -2009,4 +2062,83 @@ document.addEventListener('DOMContentLoaded', function() { }); // Export für globalen Zugriff -window.AdminDashboard = AdminDashboard; \ No newline at end of file +window.AdminDashboard = AdminDashboard; + +// ===== GLOBALE FUNKTIONEN FÜR DIREKTE VERWENDUNG ===== + +/** + * Globale Funktion für Drucker-Konfiguration - Direkter Zugriff ohne AdminDashboard-Instanz + * Entspricht der angeforderten function() { showNotification... } Implementierung + */ +window.showPrinterConfiguration = function() { + const printerId = this.dataset.printerId; + + if (!printerId) { + console.error('❌ Keine Drucker-ID im data-printer-id Attribut gefunden'); + return; + } + + // Notification anzeigen wie angefordert + showNotification(`Konfiguration für Drucker ${printerId} wird geöffnet...`, 'info'); + + // Backend-Redirect zur erweiterten Konfiguration + window.location.href = `/admin/printers/${printerId}/configure`; +}; + +/** + * Globale showNotification Funktion - falls sie nicht bereits existiert + */ +if (typeof window.showNotification !== 'function') { + window.showNotification = function(message, type = 'info') { + // Erstelle temporäre Notification mit Mercedes-Benz Design + const notification = document.createElement('div'); + notification.className = `fixed top-6 right-6 z-50 p-4 rounded-xl shadow-2xl max-w-sm transition-all duration-500 transform translate-x-full opacity-0 backdrop-blur-xl border ${ + type === 'success' ? 'bg-gradient-to-r from-green-500 to-green-600 text-white border-green-400' : + type === 'error' ? 'bg-gradient-to-r from-red-500 to-red-600 text-white border-red-400' : + type === 'warning' ? 'bg-gradient-to-r from-yellow-500 to-yellow-600 text-white border-yellow-400' : + 'bg-gradient-to-r from-blue-500 to-blue-600 text-white border-blue-400' + }`; + + notification.innerHTML = ` +
+
+ ${type === 'success' ? + '' : + type === 'error' ? + '' : + type === 'warning' ? + '' : + '' + } +
+
${message}
+ +
+ `; + + document.body.appendChild(notification); + + // Animation einblenden + setTimeout(() => { + notification.style.transform = 'translateX(0)'; + notification.style.opacity = '1'; + }, 100); + + // Automatisch entfernen nach 5 Sekunden + setTimeout(() => { + if (notification.parentNode) { + notification.style.transform = 'translateX(100%)'; + notification.style.opacity = '0'; + setTimeout(() => { + if (notification.parentNode) { + notification.parentNode.removeChild(notification); + } + }, 500); + } + }, 5000); + }; +} \ No newline at end of file diff --git a/backend/templates/admin.html b/backend/templates/admin.html index 038f35e5e..90ab5d5aa 100644 --- a/backend/templates/admin.html +++ b/backend/templates/admin.html @@ -238,14 +238,6 @@ document.addEventListener('DOMContentLoaded', function() { Benutzer - - - - - Drucker-Steckdosen - - @@ -284,7 +276,7 @@ document.addEventListener('DOMContentLoaded', function() { - 🔑 OTP-Codes + 🔑 Codes - Tapo-Monitoring + Steckdosen diff --git a/backend/templates/admin_printer_configuration.html b/backend/templates/admin_printer_configuration.html new file mode 100644 index 000000000..a2b201058 --- /dev/null +++ b/backend/templates/admin_printer_configuration.html @@ -0,0 +1,223 @@ +{% extends "base.html" %} + +{% block title %}{{ config_data.printer.name }} - Erweiterte Konfiguration - Mercedes-Benz MYP Platform{% endblock %} + +{% block head %} +{{ super() }} + +{% endblock %} + +{% block content %} +
+
+ + +
+
+
+

{{ config_data.printer.name }} - Erweiterte Konfiguration

+

Umfassende Drucker-Konfiguration und Hardware-Integration

+
+ +
+
+ + +
+
+

+ + + + Verbindungsstatus +

+ +
+ +
+
+ Drucker ({{ config_data.printer.ip_address }}) +
+
+ + {% if config_data.connectivity.printer_reachable %}Online{% else %}Offline{% endif %} + +
+
+ {% if config_data.connectivity.response_time %} +

Response: {{ config_data.connectivity.response_time }}ms

+ {% endif %} +
+ + +
+
+ Smart-Plug ({{ config_data.printer.plug_ip or 'Nicht konfiguriert' }}) +
+
+ + {% if config_data.connectivity.plug_reachable %}Online{% else %}Offline{% endif %} + +
+
+ {% if config_data.connectivity.plug_status %} +

Status: {{ config_data.connectivity.plug_status|title }}

+ {% endif %} +
+
+
+
+ + +
+ {% for category_key, category in config_data.config_categories.items() %} +
+
+
+ {% if category.icon == 'cog' %} + + + + + {% elif category.icon == 'wifi' %} + + + + {% elif category.icon == 'cpu' %} + + + + {% elif category.icon == 'zap' %} + + + + {% elif category.icon == 'tool' %} + + + + {% else %} + + + + {% endif %} +
+
+

{{ category.name }}

+

{{ category.description }}

+
+
+ +
+ + {% if category_key == 'basic' %} +
+
+ Name: + {{ config_data.printer.name }} +
+
+ Modell: + {{ config_data.printer.model or 'Nicht gesetzt' }} +
+
+ Standort: + {{ config_data.printer.location or 'Nicht gesetzt' }} +
+
+ {% elif category_key == 'network' %} +
+
+ Drucker-IP: + {{ config_data.printer.ip_address or 'Nicht gesetzt' }} +
+
+ Smart-Plug-IP: + {{ config_data.printer.plug_ip or 'Nicht gesetzt' }} +
+
+ {% elif category_key == 'hardware' %} +
+
+ Smart-Plug Status: + + {% if config_data.connectivity.plug_reachable %}Online{% else %}Offline{% endif %} + +
+ {% if config_data.hardware_status.energy_usage %} +
+ Energieverbrauch: + {{ config_data.hardware_status.energy_usage.power or 'N/A' }}W +
+ {% endif %} +
+ {% endif %} +
+ +
+ +
+
+ {% endfor %} +
+ + +
+
+

+ + + + Schnellaktionen +

+ +
+ {% for action in config_data.available_actions %} + + {% endfor %} +
+
+
+
+
+{% endblock %} \ No newline at end of file diff --git a/backend/templates/admin_tapo_monitoring.html b/backend/templates/admin_tapo_monitoring.html index 73497adf3..2fd4a4652 100644 --- a/backend/templates/admin_tapo_monitoring.html +++ b/backend/templates/admin_tapo_monitoring.html @@ -421,7 +421,7 @@

Es wurden noch keine Drucker mit Tapo-Steckdosen eingerichtet.

- + diff --git a/backend/templates/energy_dashboard.html b/backend/templates/energy_dashboard.html index 1ee93b8c1..c950e6140 100644 --- a/backend/templates/energy_dashboard.html +++ b/backend/templates/energy_dashboard.html @@ -215,78 +215,129 @@ {% else %} - +
-
-
-

Gesamtverbrauch

-

{{ stats.total_power_consumption or '0.0' }} kWh

+
+
+
+ + + +
+

Gesamtverbrauch

+

{{ stats.total_power_consumption or '0.0' }} kWh

+

24h Periode

-
-
-

Aktuelle Leistung

-

{{ stats.current_power or '0.0' }} W

+
+
+
+ + + +
+

Aktuelle Leistung

+

{{ stats.current_power or '0.0' }} W

+

Momentan

-
-
-

Aktive Geräte

-

{{ stats.active_devices or '0' }}

+
+
+
+ + + +
+

Aktive Geräte

+

{{ stats.active_devices or '0' }}

+

Von 6 Druckern

-
-
-

Kosten (€/kWh 0.30)

-

{{ "%.2f"|format((stats.total_power_consumption or 0) * 0.30) }} €

+
+
+
+ + + +
+

Kosten (€/kWh 0.30)

+

{{ "%.2f"|format((stats.total_power_consumption or 0) * 0.30) }} €

+

24h Periode

- +
-
-

Verbrauch der letzten 24 Stunden

-
+
+
+

Verbrauch der letzten 24 Stunden

+
+ + + +
+
+
-
-

Verbrauch nach Gerät

-
+
+
+

Verbrauch nach Gerät

+
+ + + + +
+
+
- -
-

Geräteübersicht

+ +
+
+
+

Geräteübersicht

+
+
+ + + +
+ Live-Updates +
+
+
- - +
+ - - - - - + + + + + - +
GerätStatusAktuelle LeistungTagesverbrauchAktionenGerätStatusAktuelle LeistungTagesverbrauchAktionen
@@ -444,8 +495,14 @@ function updateDeviceTable(devices) { if (devices.length === 0) { tbody.innerHTML = ` - - Keine Geräte gefunden + +
+ + + +

Keine Geräte gefunden

+

Überprüfen Sie die Hardware-Verbindungen

+
`; @@ -454,34 +511,46 @@ function updateDeviceTable(devices) { devices.forEach(device => { const row = document.createElement('tr'); - row.className = ''; - row.style.transition = 'background-color 0.2s ease'; - row.addEventListener('mouseenter', () => row.style.backgroundColor = 'var(--hover-card)'); - row.addEventListener('mouseleave', () => row.style.backgroundColor = 'transparent'); + row.className = 'hover:bg-slate-50 dark:hover:bg-slate-700 transition-colors duration-200'; - const statusClass = device.status === 'online' ? 'status-badge-online' : 'status-badge-offline'; - const statusText = device.status === 'online' ? 'Online' : 'Offline'; + const isOnline = device.status === 'online'; + const statusClass = isOnline + ? 'bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-400' + : 'bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-400'; + const statusText = isOnline ? 'Online' : 'Offline'; + const statusIcon = isOnline + ? '
' + : '
'; row.innerHTML = `
-
${device.name}
-
${device.model || ''}
+
+ + + +
+
+
${device.name}
+
${device.model || 'Unbekanntes Modell'}
+
- ${statusText} + ${statusIcon}${statusText} - - ${device.current_power || '0.0'} W + +
${device.current_power || '0.0'} W
+
Momentan
- - ${device.daily_consumption || '0.0'} kWh + +
${device.daily_consumption || '0.0'} kWh
+
Heute
- + Details anzeigen