#vps-manager-wrapper { font-family: sans-serif; margin: 20px 0; }
.vps-header { display: flex; justify-content: space-between; margin-bottom: 15px; flex-wrap: wrap; gap: 10px; }
.stat-box { background: #e3f2fd; padding: 10px 15px; border-radius: 4px; color: #0d47a1; }
#vps-search-input { padding: 8px; width: 100%; max-width: 300px; }

/* Table */
.table-responsive { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.vps-table { width: 100%; border-collapse: collapse; min-width: 800px; /* Ensure horizontal scroll on mobile */ }
.vps-table th, .vps-table td { border: 1px solid #ddd; padding: 10px; text-align: left; }
.vps-table th { background-color: #f4f4f4; font-weight: bold; }
.copy-cell { cursor: pointer; position: relative; }
.copy-cell:hover { background-color: #f9f9f9; }

/* Status */
.status-assigned { color: green; font-weight: bold; }
.status-free { color: #999; font-style: italic; }

/* Actions */
.btn-bat { background: #28a745; color: white; padding: 5px 10px; text-decoration: none; border-radius: 3px; font-size: 12px; }
.btn-edit { background: #007bff; color: white; border: none; padding: 5px 10px; border-radius: 3px; cursor: pointer; font-size: 12px; }

/* Modal */
.vps-modal { display: none; position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); }
.vps-modal-content { background: white; margin: 10% auto; padding: 20px; width: 90%; max-width: 500px; border-radius: 5px; position: relative; }
.close-modal { float: right; font-size: 24px; cursor: pointer; }
.vps-modal-content input { width: 100%; padding: 8px; margin: 5px 0 15px; }
.btn-save { background: #007bff; color: white; border: none; padding: 10px 20px; cursor: pointer; width: 100%; }