body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{display:flex;flex-direction:column;min-height:100vh}.header{background-color:#2c3e50;box-shadow:0 2px 4px #0000001a;color:#fff;padding:1rem 0}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2rem}.logo a{color:inherit;text-decoration:none}.logo h1{font-size:1.8rem;font-weight:600}.header-nav{align-items:center;display:flex;gap:2rem}.nav-menu{display:flex;gap:1rem}.nav-link{border-radius:4px;color:#fff;padding:.5rem 1rem;text-decoration:none;transition:background-color .2s}.nav-link:hover{background-color:#ffffff1a}.admin-link{background-color:#e74c3c}.admin-link:hover{background-color:#c0392b}.user-menu{align-items:center;display:flex;gap:1rem}.user-menu-button{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.2rem;padding:.5rem;transition:background-color .2s}.user-menu-button:hover{background-color:#ffffff1a}.admin-badge{background-color:#e74c3c;border-radius:12px;color:#fff;font-size:.75rem;margin-left:.5rem;padding:.2rem .5rem}.user-name{font-weight:500}.logout-button{background-color:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background-color .2s}.logout-button:hover{background-color:#c0392b}.main-content{flex:1 1;margin:0 auto;max-width:1200px;padding:2rem;width:100%}.loading,.loading-screen{align-items:center;color:#666;display:flex;font-size:1.1rem;justify-content:center;padding:2rem}.loading-screen{min-height:50vh}.form-group{margin-bottom:1.5rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-group label{color:#555;display:block;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.75rem;transition:border-color .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.form-group input:disabled,.form-group textarea:disabled{background-color:#f8f8f8;cursor:not-allowed}.form-help{color:#666;display:block;font-size:.875rem;margin-top:.25rem}.submit-button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 2rem;transition:background-color .2s;width:100%}.submit-button:hover:not(:disabled){background-color:#2980b9}.submit-button:disabled{background-color:#bdc3c7;cursor:not-allowed}.delete-button{background-color:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s}.delete-button:hover:not(:disabled){background-color:#c0392b}.delete-button:disabled{background-color:#bdc3c7;cursor:not-allowed}.error-message{background-color:#fee;border:1px solid #f5c6cb;border-radius:4px;color:#c0392b;margin-bottom:1rem;padding:1rem}.login-container,.register-container{align-items:center;display:flex;justify-content:center;min-height:70vh}.login-form,.register-form{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:400px;padding:2rem;width:100%}.login-form h2,.register-form h2{color:#2c3e50;margin-bottom:.5rem;text-align:center}.login-form p,.register-form p{color:#666;margin-bottom:2rem;text-align:center}.auth-link{margin-top:1rem;text-align:center}.auth-link a{color:#3498db;text-decoration:none}.auth-link a:hover{text-decoration:underline}.back-button{background-color:#95a5a6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;margin-top:1rem;padding:.75rem 2rem;transition:background-color .2s;width:100%}.back-button:hover:not(:disabled){background-color:#7f8c8d}.back-button:disabled{background-color:#bdc3c7;cursor:not-allowed}.info-text{color:#2c3e50;font-weight:500;margin-bottom:1rem}.dashboard-header{margin-bottom:2rem;text-align:center}.dashboard-header h1{color:#2c3e50;margin-bottom:.5rem}.dashboard-header p{color:#666;font-size:1.1rem}.dashboard-nav{border-bottom:1px solid #ddd;display:flex;gap:1rem;margin-bottom:2rem}.dashboard-nav button{background:none;border:none;border-bottom:2px solid #0000;color:#666;cursor:pointer;font-size:1rem;padding:1rem 1.5rem;transition:all .2s}.dashboard-nav button:hover{color:#3498db}.dashboard-nav button.active{border-bottom-color:#3498db;color:#3498db}.tab-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2rem}.freevening-form h3,.freevening-list h3{color:#2c3e50;margin-bottom:1.5rem}.freevening-list.empty{color:#666;padding:3rem;text-align:center}.freevening-items{grid-gap:1rem;display:grid;gap:1rem}.freevening-item{border:1px solid #ddd;border-radius:8px;padding:1.5rem;transition:box-shadow .2s}.freevening-item:hover{box-shadow:0 2px 8px #0000001a}.freevening-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem}.freevening-date{color:#2c3e50;font-weight:600}.freevening-time{color:#666;font-size:.9rem}.freevening-title{color:#3498db;font-weight:500;margin-bottom:.5rem}.freevening-description{color:#666;line-height:1.5;margin-bottom:1rem}.freevening-actions{display:flex;justify-content:flex-end}.calendar-container{margin:0 auto;max-width:800px}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.calendar-header h2{color:#2c3e50}.nav-button{background-color:#3498db;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.2rem;height:40px;transition:background-color .2s;width:40px}.nav-button:hover{background-color:#2980b9}.calendar-legend{display:flex;gap:2rem;justify-content:center;margin-bottom:2rem}.legend-item{align-items:center;display:flex;gap:.5rem}.legend-color{border-radius:4px;height:20px;width:20px}.admin-panel{margin:0 auto;max-width:800px;padding:2rem}.admin-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;padding:2rem}.admin-section h3{color:#2c3e50;margin-bottom:1rem}.invite-form{display:flex;flex-direction:column;gap:1rem}.checkbox-group{align-items:center;display:flex;gap:.5rem}.checkbox-group input[type=checkbox]{margin-right:.5rem}.admin-info{background:#f8f9fa;border-left:4px solid #e74c3c;border-radius:8px;padding:1.5rem}.admin-info h3{color:#e74c3c;margin-bottom:1rem}.admin-info ul{color:#666;padding-left:1.5rem}.admin-info li{margin-bottom:.5rem}.success-message{padding:.75rem}.submit-button.danger{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.submit-button.danger:hover{background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 4px 12px #e74c3c4d;transform:translateY(-2px)}.warning-note{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404;font-size:.9rem;margin-top:1rem;padding:1rem}.auth-info{background:#f8f9fa;border-radius:8px;margin-top:2rem;padding:1.5rem;text-align:center}.auth-info p{color:#666;margin-bottom:.5rem}.loading-container{align-items:center;color:#666;display:flex;font-size:1.2rem;height:200px;justify-content:center}.legend-color.red{background-color:#e74c3c}.legend-color.yellow{background-color:#f39c12}.legend-color.green{background-color:#27ae60}.calendar-grid{border:1px solid #ddd;border-radius:8px;overflow:hidden}.day-names{background-color:#34495e;display:grid;grid-template-columns:repeat(7,1fr)}.day-name{color:#fff;font-weight:600;padding:1rem;text-align:center}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{border-bottom:1px solid #ddd;border-right:1px solid #ddd;cursor:pointer;display:flex;flex-direction:column;min-height:80px;padding:.5rem;position:relative;transition:all .2s}.calendar-day:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.calendar-day.red{background-color:#fadbd8}.calendar-day.yellow{background-color:#fdeaa7}.calendar-day.green{background-color:#d5f4e6}.calendar-day.other-month{opacity:.3}.day-number{font-size:.9rem;font-weight:600}.participant-count{align-items:center;background-color:#3498db;border-radius:50%;color:#fff;display:flex;font-size:.75rem;font-weight:600;height:20px;justify-content:center;position:absolute;right:.25rem;top:.25rem;width:20px}.calendar-day.updating{animation:pulse 1s infinite;opacity:.6;pointer-events:none}@keyframes pulse{0%{opacity:.6}50%{opacity:.3}to{opacity:.6}}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:8px;max-height:80vh;max-width:500px;overflow-y:auto;padding:2rem;width:90%}.modal-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.modal-header h3{color:#2c3e50;margin:0}.close-button{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;width:30px}.close-button:hover{color:#333}.overlap-info{text-align:center}.overlap-count{color:#2c3e50;font-size:1.2rem;margin-bottom:1.5rem}.participants h4{color:#2c3e50;margin-bottom:1rem}.participants ul{list-style:none;text-align:left}.participants li{border-bottom:1px solid #eee;padding:.5rem}.participants li:last-child{border-bottom:none}@media (max-width:768px){.main-content{padding:1rem}.header-content{padding:0 1rem}.form-row{grid-template-columns:1fr}.dashboard-nav{flex-direction:column;gap:0}.dashboard-nav button{padding:1rem;text-align:left}.calendar-legend{align-items:center;flex-direction:column;gap:.5rem}.calendar-day{min-height:60px;padding:.25rem}.day-number{font-size:.8rem}.participant-count{font-size:.7rem;height:16px;width:16px}}.notification-settings{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin:1rem 0;padding:2rem}.notification-settings h3{color:#2c3e50;font-size:1.5rem;margin:0 0 1rem}.settings-description{color:#666;line-height:1.6;margin-bottom:2rem}.notification-form{max-width:600px}.radio-group{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.radio-option{position:relative}.radio-label{align-items:flex-start;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;gap:1rem;padding:1.5rem;transition:all .2s ease}.radio-label:hover{background:#f0f9ff;border-color:#3498db}.radio-label.selected{background:linear-gradient(135deg,#e3f2fd,#f0f9ff);border-color:#3498db;box-shadow:0 2px 8px #3498db33}.radio-label input[type=radio]{accent-color:#3498db;flex-shrink:0;height:20px;margin:2px 0 0;width:20px}.radio-content{flex:1 1}.radio-title{color:#2c3e50;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.radio-description{color:#666;font-size:.9rem;line-height:1.5}.current-selection{background:#e8f5e8;border:1px solid #28a745;border-radius:6px;color:#1e7e34;margin-bottom:2rem;padding:1rem}.save-button{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.save-button:hover:not(:disabled){box-shadow:0 4px 12px #3498db4d;transform:translateY(-2px)}.save-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.notification-info{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-top:2rem;padding:1.5rem}.notification-info h4{color:#856404;margin:0 0 1rem}.notification-info ul{color:#856404;line-height:1.6;margin:0}.notification-info li{margin-bottom:.5rem}.loading{color:#666;font-style:italic;padding:2rem;text-align:center}.error-container{margin-bottom:1rem}.reset-password-prompt{margin-top:.75rem;text-align:center}.reset-password-link{background:none;border:none;color:#3498db;cursor:pointer;font-size:.9rem;padding:0;text-decoration:underline;transition:color .2s}.reset-password-link:hover:not(:disabled){color:#2980b9}.reset-password-link:disabled{color:#bdc3c7;cursor:not-allowed}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724;margin-bottom:1rem;padding:1rem}.reset-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.text-button{background:none;border:none;color:#3498db;cursor:pointer;font-size:.9rem;padding:.5rem;text-decoration:underline;transition:color .2s}.text-button:hover:not(:disabled){color:#2980b9}.text-button:disabled{color:#bdc3c7;cursor:not-allowed}@media (max-width:768px){.notification-settings{margin:.5rem 0;padding:1rem}.radio-label{gap:.75rem;padding:1rem}.radio-title{font-size:1rem}.radio-description{font-size:.85rem}}
/*# sourceMappingURL=main.b79fe754.css.map*/