:root{--color-bg:#fff;--color-surface:#fff;--color-elevated:#fff;--color-text:#1f2937;--color-text-muted:#6b7280;--color-border:#e5e7eb;--color-shadow:#0000001a;--color-primary:#007bff;--color-primary-hover:#0056b3;--color-success:#28a745;--color-warning:#ffc107;--color-danger:#dc3545;--color-info:#17a2b8;--color-purple:#6f42c1;--color-accent:#0ff;--color-accent-hover:#0cc;--text-on-primary:#fff;--text-on-success:#fff;--text-on-warning:#000;--text-on-danger:#fff;--text-on-info:#000;--stack-1:#ff4d4f;--stack-2:#ff6a00;--stack-3:#ffd500;--stack-4:#52c41a;--stack-5:#1890ff;--stack-6:#722ed1;--text-on-stack-1:#000;--text-on-stack-2:#000;--text-on-stack-3:#000;--text-on-stack-4:#000;--text-on-stack-5:#fff;--text-on-stack-6:#fff;--overlay:#00000080;--color-ring:#93c5fd;--color-ring-hover:#60a5fa;--color-icon-bg:#f3f4f6;--color-icon-bg-hover:#e5e7eb;--color-icon:#000;--color-icon-hover:#111}html[data-theme=dark]{--color-bg:#0b1020;--color-surface:#121933;--color-elevated:#1a2347;--color-text:#e5e7eb;--color-text-muted:#a1a1aa;--color-border:#2a2f45;--color-shadow:#0006;--color-primary:#4ea1ff;--color-primary-hover:#2f7ddb;--color-success:#4ade80;--color-warning:#facc15;--color-danger:#f87171;--color-info:#38bdf8;--color-purple:#a78bfa;--color-accent:#22d3ee;--color-accent-hover:#06b6d4;--overlay:#0009;--text-on-primary:#0b1020;--text-on-success:#0b1020;--text-on-warning:#0b1020;--text-on-danger:#0b1020;--text-on-info:#0b1020;--stack-1:#ef4444;--stack-2:#ff7a12;--stack-3:#ffe34d;--stack-4:#22c55e;--stack-5:#3b82f6;--stack-6:#8b5cf6;--text-on-stack-1:#0b1020;--text-on-stack-2:#0b1020;--text-on-stack-3:#0b1020;--text-on-stack-4:#0b1020;--text-on-stack-5:#0b1020;--text-on-stack-6:#0b1020;--color-ring:#60a5fa;--color-ring-hover:#3b82f6;--color-icon-bg:#0f172a;--color-icon-bg-hover:#1e293b;--color-icon:#22d3ee;--color-icon-hover:#06b6d4}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch;background:#fff;background:var(--color-bg);color:#1f2937;color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;overflow-y:auto}#root,body,html{min-height:100%}#root{min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}.container{margin:0 auto;max-width:1200px;padding:0 20px}.btn{border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:10px 20px}.btn-primary{background-color:#007bff;background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:#0056b3;background-color:var(--color-primary-hover)}.form-group{margin-bottom:15px}.form-group label{display:block;font-weight:700;margin-bottom:5px}.form-group input{border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:4px;color:#1f2937;color:var(--color-text);padding:10px;width:100%}.card,.form-group input{background:#fff;background:var(--color-surface)}.card{border-radius:8px;box-shadow:0 2px 4px #0000001a;box-shadow:0 2px 4px var(--color-shadow);margin-bottom:20px;padding:20px}.grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.user-card{align-items:center;background:#fff;background:var(--color-surface);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:8px;display:flex;gap:15px;padding:15px}.user-avatar{border-radius:50%;height:50px;width:50px}.user-info{flex:1 1}.user-name{color:#1f2937;color:var(--color-text);font-weight:700;text-decoration:none}.user-name:hover{color:#007bff;color:var(--color-primary)}.header{background:#fff;background:var(--color-elevated);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-border);padding:15px 0}.header-content{align-items:center;display:flex;justify-content:space-between}.nav-tabs{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-border);display:flex;margin-bottom:20px}.nav-tab{background:none;border:none;border-bottom:2px solid #0000;color:#1f2937;color:var(--color-text);cursor:pointer;padding:10px 20px}.nav-tab.active{border-bottom-color:#007bff;border-bottom-color:var(--color-primary);color:#007bff;color:var(--color-primary)}html[data-theme=dark] .nav-tab{color:#fff}.login-container{background:#fff;background:var(--color-surface);border-radius:8px;box-shadow:0 4px 6px #0000001a;box-shadow:0 4px 6px var(--color-shadow);margin:100px auto;max-width:400px;padding:40px}.login-logo{margin-bottom:20px;text-align:center}.logo-image{height:auto;margin-bottom:10px;max-width:200px}.login-title{color:#1f2937;color:var(--color-text);margin-bottom:30px;text-align:center}.login-links{margin-top:20px;text-align:center}.login-links a{color:#007bff;color:var(--color-primary);font-size:14px;text-decoration:none}.login-links a:hover{text-decoration:underline}.password-reset-container{background:#fff;background:var(--color-surface);border-radius:8px;box-shadow:0 4px 6px #0000001a;box-shadow:0 4px 6px var(--color-shadow);margin:80px auto;max-width:450px;padding:40px}.password-reset-title{color:#1f2937;color:var(--color-text);font-size:24px;margin-bottom:20px;text-align:center}.password-reset-container p{color:#6b7280;color:var(--color-text-muted);line-height:1.5;margin-bottom:30px;text-align:center}.password-reset-container .form-group{margin-bottom:20px}.password-reset-container .form-group input{border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:4px;font-size:16px;max-width:100%;padding:12px 15px;transition:border-color .3s ease;width:100%}.password-reset-container .form-group input:focus{border-color:#007bff;border-color:var(--color-primary);box-shadow:0 0 0 2px #007aff33;outline:none}.password-reset-logo{margin-bottom:20px;text-align:center}.password-reset-logo .logo-image{height:auto;margin-bottom:10px;max-width:200px}.password-reset-container .btn{font-size:16px;font-weight:500;margin-top:10px;max-width:100%;padding:12px 20px;width:100%}.password-reset-links{margin-top:25px;text-align:center}.password-reset-links a{color:#007bff;color:var(--color-primary);font-size:14px;text-decoration:none}.password-reset-links a:hover{text-decoration:underline}.notifications-modal{align-items:center;background-color:#00000080;background-color:var(--overlay);display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.notifications-content{background:#fff;background:var(--color-surface);border-radius:8px;box-shadow:0 4px 6px #0000001a;box-shadow:0 4px 6px var(--color-shadow);max-height:80vh;max-width:500px;overflow:hidden;width:90%}.notifications-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:20px}.notifications-header h2{color:#1f2937;color:var(--color-text);font-size:1.5rem;margin:0}.close-btn{align-items:center;background:none;border:none;color:#6b7280;color:var(--color-text-muted);cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;padding:0;width:30px}.close-btn:hover{color:#1f2937;color:var(--color-text)}.notifications-body{max-height:60vh;overflow-y:auto;padding:20px}.notifications-list{display:flex;flex-direction:column;gap:15px}.notification-item{background:#fff;background:var(--color-elevated);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:8px;padding:15px}.notification-content{align-items:center;display:flex;gap:15px;justify-content:space-between}.notification-text{color:#1f2937;color:var(--color-text);flex:1 1}.notification-actions{display:flex;gap:10px}.btn-sm{font-size:.875rem;padding:5px 12px}.no-notifications{color:#666;font-style:italic;padding:40px 0;text-align:center}.error-message{background:#ffebee;border-radius:4px;color:#d32f2f;margin-bottom:15px;padding:10px}.notification-icon{align-items:center;background-color:#f3f4f6;background-color:var(--color-icon-bg);border:1px solid #93c5fd;border:1px solid var(--color-ring);border-radius:50%;color:#6b7280;color:var(--color-text-muted);cursor:pointer;display:flex;justify-content:center;padding:8px;position:relative;transition:background-color .2s}.notification-icon:hover{background-color:#e5e7eb;background-color:var(--color-icon-bg-hover);border-color:#60a5fa;border-color:var(--color-ring-hover);color:#1f2937;color:var(--color-text)}.notification-icon svg{fill:#000;fill:var(--color-icon);height:28px;transition:fill .2s;width:28px}.notification-icon:hover svg{fill:#111;fill:var(--color-icon-hover)}.server-error{background:#fff;background:var(--color-bg);color:#1f2937;color:var(--color-text)}.notification-badge{background:#f44336;border-radius:50%;color:#fff;font-size:.75rem;font-weight:700;height:18px;position:absolute;right:0;width:18px}.groups-modal,.notification-badge{align-items:center;display:flex;justify-content:center;top:0}.groups-modal{background-color:#00000080;height:100%;left:0;position:fixed;width:100%;z-index:1000}.groups-content{background:#fff;background:var(--color-surface);border-radius:8px;box-shadow:0 4px 6px #0000001a;box-shadow:0 4px 6px var(--color-shadow);max-height:80vh;max-width:800px;overflow:hidden;width:90%}.groups-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:20px}.groups-header h2{color:#1f2937;color:var(--color-text);font-size:1.5rem;margin:0}.groups-body{max-height:60vh;overflow-y:auto;padding:20px}.groups-section{margin-bottom:30px}.groups-section h3{color:#1f2937;color:var(--color-text);font-size:1.2rem;margin-bottom:15px}.groups-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.group-card{align-items:center;background:#fff;background:var(--color-surface);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:8px;display:flex;gap:15px;padding:15px;transition:box-shadow .2s}.group-card:hover{box-shadow:0 2px 8px #0000001a;box-shadow:0 2px 8px var(--color-shadow)}.group-avatar{border-radius:50%;height:50px;width:50px}.group-info{flex:1 1}.group-name{color:#1f2937;color:var(--color-text);font-weight:700;text-decoration:none}.group-name:hover{color:#007bff;color:var(--color-primary)}.no-groups{color:#6b7280;color:var(--color-text-muted);font-style:italic;padding:40px 0;text-align:center}@supports (-webkit-touch-callout:none){input,select,textarea{font-size:16px}}.modal-overlay{align-items:center;background-color:#00000080;background-color:var(--overlay);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-card{background:#fff;background:var(--color-surface);border-radius:8px;box-shadow:0 4px 6px #0000001a;box-shadow:0 4px 6px var(--color-shadow);color:#1f2937;color:var(--color-text);max-width:460px;padding:20px;text-align:center;width:calc(100% - 32px)}.modal-title{margin:0 0 8px}.modal-text{color:#6b7280;color:var(--color-text-muted);font-style:italic;margin-bottom:20px}.modal-actions{display:flex;gap:10px;justify-content:center}.toggle{display:inline-block;height:24px;position:relative;width:44px}.toggle input{height:0;opacity:0;width:0}.toggle-slider{background-color:#e5e7eb;background-color:var(--color-border);border-radius:9999px;bottom:0;box-shadow:inset 0 0 0 1px #e5e7eb;box-shadow:inset 0 0 0 1px var(--color-border);cursor:pointer;left:0;right:0;top:0}.toggle-slider,.toggle-slider:before{position:absolute;transition:.2s ease}.toggle-slider:before{background-color:#fff;background-color:var(--color-surface);border-radius:50%;box-shadow:0 1px 2px #0000001a;box-shadow:0 1px 2px var(--color-shadow);content:"";height:18px;left:3px;top:3px;width:18px}.toggle input:checked+.toggle-slider{background-color:#28a745;background-color:var(--color-success);box-shadow:inset 0 0 0 1px #28a745;box-shadow:inset 0 0 0 1px var(--color-success)}.toggle input:checked+.toggle-slider:before{transform:translateX(20px)}.register-container{background:var(--color-surface);border-radius:8px;box-shadow:0 2px 10px var(--color-shadow);margin:20px auto;max-width:500px;overflow:visible;padding:40px 20px}.register-logo{margin-bottom:20px;text-align:center}.register-logo .logo-image{height:auto;margin-bottom:10px;max-width:200px}.register-container h2{color:var(--color-text);font-size:28px;margin-bottom:10px;text-align:center}.register-subtitle{color:var(--color-text-muted);font-size:16px;margin-bottom:30px;text-align:center}.register-form{gap:20px;overflow:visible}.form-group,.register-form{display:flex;flex-direction:column}.form-group label{color:var(--color-text);font-size:14px;font-weight:600;margin-bottom:8px}.form-group input{border:2px solid var(--color-border);border-radius:6px;font-size:16px;padding:12px 16px;transition:border-color .3s ease}.form-group input[type=checkbox]{border:none;border-radius:0;height:auto;margin-right:8px;padding:0;width:auto}.form-group input:focus{border-color:var(--color-success);box-shadow:0 0 0 3px #4caf501a;outline:none}.form-group input.error{border-color:var(--color-danger)}.error-text{color:var(--color-danger)}.error-text,.help-text{font-size:12px;margin-top:4px}.help-text{color:var(--color-text-muted);font-style:italic}.register-button{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:14px 20px;transition:background-color .3s ease}.register-button,.register-button:hover:not(:disabled){background:var(--color-success)}.register-button:disabled{background:var(--color-border);cursor:not-allowed}.register-footer{border-top:1px solid var(--color-border);margin-top:30px;padding-top:20px;text-align:center}.register-footer a{color:var(--color-success);font-weight:600;text-decoration:none}.register-footer a:hover{text-decoration:underline}.error-message{border-radius:6px;font-size:14px;margin-bottom:20px;padding:12px 16px}.general-error{background:var(--color-elevated);border:1px solid var(--color-border);color:var(--color-danger)}.register-success{background:var(--color-surface);border-radius:8px;box-shadow:0 2px 10px var(--color-shadow);margin:0 auto;max-width:500px;padding:40px 20px;text-align:center}.register-success h2{color:var(--color-success);font-size:24px;margin-bottom:20px}.register-success p{color:var(--color-text);line-height:1.6;margin-bottom:15px}.verification-reminder{background:var(--color-surface);border-radius:6px;margin-top:20px;padding:20px;text-align:left}.verification-reminder p{margin-bottom:10px}.verification-reminder ul{margin:0;padding-left:20px}.verification-reminder li{color:var(--color-text-muted);margin-bottom:5px}@media (max-width:600px){.register-container,.register-success{margin:20px;padding:30px 20px}.register-container h2{font-size:24px}.form-group input{font-size:16px}}.email-verification-container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:0 auto;max-width:500px;padding:40px 20px;text-align:center}.verification-error,.verification-loading,.verification-success{align-items:center;display:flex;flex-direction:column;gap:20px}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#4caf50;height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.success-icon{background:#4caf50}.error-icon,.success-icon{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:30px;font-weight:700;height:60px;justify-content:center;width:60px}.error-icon{background:#f44336}.verification-error h2,.verification-loading h2,.verification-success h2{color:#333;font-size:24px;margin:0}.verification-loading p,.verification-success p{color:#666;line-height:1.6;margin:0}.error-message{color:#f44336;font-weight:600;margin:0}.verification-error ul{margin:15px 0;padding-left:20px;text-align:left}.verification-error li{color:#666;margin-bottom:5px}.verification-actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:20px}.login-button,.register-button{border-radius:6px;font-weight:600;padding:12px 24px;text-decoration:none;transition:background-color .3s ease}.login-button{background:#4caf50;color:#fff}.login-button:hover{background:#45a049}.register-button{background:#2196f3;color:#fff}.register-button:hover{background:#1976d2}@media (max-width:600px){.email-verification-container{margin:20px;padding:30px 20px}.verification-actions{flex-direction:column}.login-button,.register-button{text-align:center;width:100%}}
/*# sourceMappingURL=main.11b4a7ef.css.map*/