*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px}.login-box{background:#fff;padding:40px;border-radius:8px;box-shadow:0 2px 10px #0000001a;width:100%;max-width:400px}.login-box h1{text-align:center;color:#333;margin-bottom:10px}.login-box h2{text-align:center;color:#666;margin-bottom:30px;font-size:20px}.container{max-width:1200px;margin:0 auto;padding:20px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}header h1{color:#333}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:10px;flex-wrap:wrap}.activation-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.activation-status{display:flex;align-items:center;justify-content:flex-end;min-width:24px}.status-dot{width:14px;height:14px;border-radius:999px;background:#28a745;box-shadow:0 0 0 2px #28a74533}.status-dot--inactive{background:#ffc107;box-shadow:0 0 0 2px #ffc10740}.status-dot--active{background:#28a745;box-shadow:0 0 0 2px #28a74533}.search-input{flex:1;min-width:200px;padding:10px 15px;border:1px solid #ddd;border-radius:4px;font-size:14px}input,textarea,select{width:100%;padding:12px;margin-bottom:15px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}textarea{resize:vertical}button{padding:12px 24px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #00000026}button:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #0000001a}.btn-primary{background:linear-gradient(135deg,#1e88e5,#1565c0);color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1565c0,#0d47a1)}.btn-secondary{background:linear-gradient(135deg,#42a5f5,#2196f3);color:#fff;margin-left:10px}.btn-secondary:hover{background:linear-gradient(135deg,#2196f3,#1976d2)}.btn-edit{background:linear-gradient(135deg,#1e88e5,#1565c0);color:#fff}.btn-edit:hover{background:linear-gradient(135deg,#1565c0,#0d47a1)}.btn-delete{background:linear-gradient(135deg,#ef5350,#e53935);color:#fff;margin-left:10px}.btn-delete:hover{background:linear-gradient(135deg,#e53935,#c62828)}button:disabled{opacity:.6;cursor:not-allowed}.toggle-btn{width:100%;background:transparent;color:#1e88e5;border:2px solid #1e88e5;margin-top:10px;box-shadow:none}.toggle-btn:hover{background:linear-gradient(135deg,#1e88e5,#1565c0);color:#fff;border-color:#1e88e5}.error{background:#f8d7da;color:#721c24;padding:12px;border-radius:4px;margin-bottom:15px;border:1px solid #f5c6cb}.success{background:#d4edda;color:#155724;padding:12px;border-radius:4px;margin-bottom:15px;border:1px solid #c3e6cb}.warning{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff3cd;color:#856404;padding:12px;border-radius:4px;margin-bottom:15px;border:1px solid #ffeeba}.loading{text-align:center;padding:40px;color:#666}.tag-manager{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.admin-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}.admin-logs{margin-bottom:30px}.admin-logs-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;flex-wrap:wrap}.admin-logs-filters{display:flex;gap:10px;flex-wrap:wrap}.admin-logs-filters select,.admin-logs-filters input{min-width:200px;margin-bottom:0}.audit-table{display:flex;flex-direction:column;gap:8px}.audit-row{display:grid;grid-template-columns:1.2fr 1.2fr 1fr 1fr 2fr;gap:12px;padding:10px 12px;background:#f8f9fa;border-radius:6px;font-size:13px;color:#444}.audit-header{background:#e9ecef;font-weight:600;color:#333}.audit-details{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;color:#555;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state{padding:20px;text-align:center;color:#777}.calendar-panel{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.profile-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px}.profile-card{background:#f8f9fa;padding:20px;border-radius:8px;display:flex;flex-direction:column;gap:12px}.profile-avatar{display:flex;flex-direction:column;gap:8px}.profile-avatar img{width:100px;height:100px;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb}.avatar-placeholder{width:100px;height:100px;border-radius:8px;border:1px dashed #cbd5f5;display:flex;align-items:center;justify-content:center;font-size:12px;color:#6b7280;background:#fff}.calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}.calendar-view button{margin-right:8px}.calendar-nav{display:flex;align-items:center;gap:10px}.calendar-grid{display:grid;gap:8px;margin-bottom:20px}.calendar-grid.week,.calendar-grid.month{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-cell{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:6px;padding:8px;min-height:90px;text-align:left}.calendar-cell.selected{border-color:#007bff;box-shadow:0 0 0 2px #007bff26}.calendar-cell.outside{opacity:.5}.calendar-cell-header{font-size:12px;font-weight:600;margin-bottom:6px;color:#555}.calendar-events{display:flex;flex-direction:column;gap:4px}.event-chip{display:inline-flex;padding:2px 6px;border-radius:10px;font-size:11px;color:#0f172a;background:#e2e8f0}.event-chip.task{background:#dbeafe;color:#1d4ed8}.event-chip.meeting{background:#dcfce7;color:#15803d}.event-more{font-size:11px;color:#6b7280}.calendar-details{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.calendar-item{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:6px;background:#f8f9fa;margin-bottom:10px}.calendar-item-meta{font-size:12px;color:#6b7280;margin-top:4px}.calendar-item-notes{margin-top:6px;font-size:13px;color:#4b5563}.calendar-form .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.calendar-form .checkbox{display:flex;align-items:center;gap:8px;margin-bottom:15px}.tag-manager h3{margin-bottom:15px;color:#333}.tag-form{display:flex;gap:10px;margin-bottom:15px}.tag-form input{flex:1;margin-bottom:0}.tag-form button{padding:10px 20px}.admin-form .form-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#333}.admin-form .form-actions{display:flex;justify-content:flex-end}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{display:inline-flex;align-items:center;background:#e3f2fd;color:#1976d2;padding:5px 12px;border-radius:16px;font-size:13px;gap:5px}.tag-delete{background:transparent;color:#1976d2;border:none;padding:0;width:18px;height:18px;border-radius:50%;font-size:16px;line-height:1;cursor:pointer}.tag-delete:hover{background:#1976d2;color:#fff}.contacts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-bottom:30px}.contact-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.contact-card h3{margin-bottom:10px;color:#333}.contact-card p{margin:5px 0;color:#666;font-size:14px}.contact-card .notes{margin-top:10px;padding-top:10px;border-top:1px solid #eee;font-style:italic}.card-actions{margin-top:15px;padding-top:15px;border-top:1px solid #eee}.user-card{display:flex;justify-content:space-between;gap:16px}.user-card-content{flex:1;min-width:0}.user-card-actions{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;gap:10px}.user-action-btn{width:40px;height:40px;border-radius:10px;border:none;display:inline-flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;background:#f5f5f5;color:#333;box-shadow:0 2px 4px #0000001a;transition:transform .12s ease,box-shadow .12s ease,opacity .12s ease}.user-action-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #0000001f}.user-action-btn:disabled{opacity:.6;cursor:not-allowed}.user-action-btn.edit{background:#e3f2fd;color:#1565c0}.user-action-btn.confirm{background:#e8f5e9;color:#2e7d32;font-size:20px}.user-action-btn.suspend{background:#fff3e0;color:#ef6c00}.user-action-btn.delete{background:#e53935;color:#fff}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.pagination button{padding:8px 16px}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-content{background:#fff;padding:30px;border-radius:8px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-content h2{margin-bottom:20px;color:#333}.modal-email{margin-top:-10px;margin-bottom:16px;color:#555;font-size:14px}.admin-form--modal .form-row{grid-template-columns:1fr}.admin-form--modal input,.admin-form--modal select,.admin-form--modal textarea{width:100%}.modal-content .form-actions{justify-content:flex-end}.modal-content .form-actions button{flex:0 0 auto;min-width:140px}.tag-selector{margin:20px 0}.tag-selector label{display:block;margin-bottom:10px;font-weight:600;color:#333}.tag-list{display:flex;flex-wrap:wrap;gap:10px}.tag-checkbox{display:flex;align-items:center;gap:5px;padding:8px 12px;background:#f5f5f5;border-radius:4px;cursor:pointer;font-weight:400}.tag-checkbox input{width:auto;margin:0;cursor:pointer}.tag-checkbox:hover{background:#e0e0e0}.form-actions{display:flex;gap:10px;margin-top:20px}.form-actions button{flex:1;margin:0}@media (max-width: 768px){header{flex-direction:column;gap:12px;align-items:flex-start}.toolbar{flex-direction:column;align-items:stretch}.tag-form{flex-direction:column}.admin-form .form-row,.admin-top,.calendar-details,.profile-section{grid-template-columns:1fr}}
